Ajax Json数据交互
- 前端到后台:前端ajax发送json格式字符串,后台接收为pojo参数,注解为@RequestBody
- 后台到前端:后台直接返回pojo对象,前端直接接收为json对象或字符串,注解为@ResponseBody
代码示例
后台逻辑处理<!--前端页面--> <%@ page isELIgnored="false" contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>测试页</title> <!--引入jquery --> <script type="text/javascript" src="/js/jquery.min.js"></script> <script> $(function () { //绑定点击事件 $("#ajaxBtn").bind("click",function () { // 发送ajax请求 $.ajax({ url: '/demo/handle07', type: 'POST', data: '{"id":"1","name":"李四"}',//json数据格式 contentType: 'application/json;charset=utf-8',//传递数据格式为json dataType: 'json',//返回数据格式为json success: function (data) { alert(data.name); } }) }) }) </script> </head> <body> <div> <h2>Ajax json交互</h2> <fieldset> <input type="button" id="ajaxBtn" value="ajax提交"/> </fieldset> </div> </body> </html>
@RequestMapping("/handle07") // 添加@ResponseBody之后,不再走视图解析器那个流程,而是等同于response直接输出数据 public @ResponseBody User handle07(@RequestBody User user) { // 业务逻辑处理,修改name为张三丰 user.setName("张三丰"); return user; }