我的ajax
$('.submit').click(function(){
var userName = $('.userName').val();
var password = $('.password').val();
var json={
"userName":userName,
"password":password
};
$.ajax({
url:"/jsonTest.do",
contentType:"application/json",
dataType:"json",
type:"POST",
data:JSON.stringify(json),
success:function (data) {
console.log(data);
},
error:function (data) {
alert("失败");
}
}
)
})
后台的controller
@RequestMapping(value = "/jsonTest.do")
public void jsonTest(@RequestBody User user,HttpServletRequest request,HttpServletResponse response) {
System.out.println("jsonTest:userName" + user.getUserName());
if (blogService.selectByPrimaryKey(1) == null) {
addOneBlog(1);
}
BlogWithBLOBs blogWithBLOBs = blogService.selectByPrimaryKey(1);
JsonUtil.toJSON(blogWithBLOBs,response);
}
问题来了,我添加了@RequestBody标签就会报415Unsupported Media Type.当我把这个注解去掉后,就能正常取值了。为什么呢,我记得我学的时候都说的是用这个标签来接收json数据啊