使用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;
}
调整后执行正常。