使用spring3+mybatis+jquery使用jquery ajax开发时,总是报error,进行用户添加时,前端:
$("#adduser").click(function(){
var jsonuserinfo = $.toJSON($('#userForm').serializeObject());
$.ajax({
type:"post", //请求方式
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
url:"../ccippatrol/useradd.do",
data : jsonuserinfo,
dataType:'json',
success : function(data) {
closeWin();
alert("新增成功!");
},
error:function(data) {
alert("新增失败!")
}
});
});
后端:
@RequestMapping(value="/useradd", method=RequestMethod.POST)
@ResponseBody
public String userAdd(@RequestBody User user){
logger.info("username:"+user.getUsername());
logger.info("password:"+user.getPassword());
ccipPatrolService.userAdd(user);
return "success";
}
执行用户添加,在firebug下调试,发现,用户已经添加成功,并且相应中也返回success,但是结果却总是走error了,经过分析是因为设定返回结果为json,但是,我返回了字符串,所以,它定位到了error。调整java代码,返回对象如下:
@RequestMapping(value="/useradd", method=RequestMethod.POST)
@ResponseBody
public User userAdd(@RequestBody User user){
System.out.println("aaaaaaaaaaaaaaaa");
logger.info("username:"+user.getUsername());
logger.info("password:"+user.getPassword());
ccipPatrolService.userAdd(user);
return user;
}
调整后执行正常。