Spring mvc系列六之 ajax运用(基于json格式)
?
?
?
给提示按钮添加点击事件,当提交表单时获取用户名name,和年龄age,以post的方式提交表user/addUser,并把服务器返回的数据显示出来,这里要注意JSP页面头上最好加上
?这里我们用User这个实体接收ajax传过来的参数,当然也可以这样写:
?这句话,把传过来的数据拼成类json格式("key":"value"),这里要注意字符串里面的双引号不能用单引号表示,
?
这里我们声明的数据除text/html还有application/json和application/atom+xml.
?
先看一下我们的jsp页面json.jsp:
?
?向user/testJson发送请求.成功后显示返回数据.
?
看一下Controller
?这里除了使用jquery-1.8.3.js外还使用了一个插件jquery.json-2.4.js,大家可以上网下载
它的简单用法:
package gd.hz.springmvc.controller;import gd.hz.springmvc.model.User;import java.util.HashMap;import java.util.Map;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestBody;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controller("userController")@RequestMapping("user")public class UserController {@RequestMapping("testJson2")@ResponseBodypublic Map<String, Object> testJson2(@RequestBody User user) {System.out.println("testJson2");System.out.println(user.getName());System.out.println(user.getAge());Map<String, Object> modelMap = new HashMap<String, Object>();modelMap.put("name", user.getName());modelMap.put("age", user.getAge());return modelMap;}}?
@RequestBody 将 HTTP 请求正文插入方法中,将请求体写入某个对象。
还是要注意,输入年龄时要是数值.祝大家测试成功.?