JSON数据交互
@RequestBody
使用前请导包
导入jackson的jar包在 controller的方法中可以使用@RequestBody,让spirngMvc将json格式字符串自动转换成java中的pojo。
剩下的看代码吧=_=
jsp中代码如下:
<script type="text/javascript">
function sendJson(){
//请求json响应json
$.ajax({//使用ajax之后controller中不用写返回页面,会自动返回当前页面
type:"post",
url:"${pageContext.request.contextPath }/items/sendJson.action",//在controller中找/sendJson对应的方法
contentType:"application/json;charset=utf-8",
data:'{"name":"测试商品","price":99.9}',
success:function(data){//ajax执行成功的回调函数,data为controller返回的数据
alert(data);
}
});
}
</script>
<input type="button" value="senJson" onClick="sendJson()"/>
controller中代码如下:
//导入jackson的jar包在 controller的方法中可以使用@RequestBody,让spirngMvc将json格式字符串自动转换成java中的pojo
//页面json的key要等于java中pojo的属性名称
//controller方法返回pojo类型的对象并且用@ResponseBody注解,springMvc会自动将pojo对象转换成json格式字符串
@RequestMapping("/sendJson")
@ResponseBody
public Items json(@RequestBody Items items) throws Exception{
System.out.println(items);
return items;
}
@ResponseBody
controller方法返回pojo类型的对象并且用@ResponseBody注解,springMvc会自动将pojo对象转换成json格式字符串。
代码看上例中的controller。