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