SpringMVC的json数据交互

  1. @RequestBody

作用:

@RequestBody注解用于读取http请求的内容(字符串),通过springmvc提供的HttpMessageConverter接口将读到的内容(json数据)转换为java对象并绑定到Controller方法的参数上。

传统的请求参数:

itemEdit.action?id=1&name=zhangsan&age=12

现在的请求参数:

使用POST请求,在请求体里面加入json数据

{"id": 1,"name": "测试商品","price": 99.9,"detail": "测试商品描述","pic": "123456.jpg"}

本例子应用:

@RequestBody注解实现接收http请求的json数据,将json数据转换为java对象进行绑定

  1. @ResponseBody

作用:

@ResponseBody注解用于将Controller的方法返回的对象,通过springmvc提供的HttpMessageConverter接口转换为指定格式的数据如:json,xml等,通过Response响应给客户端

本例子应用:

@ResponseBody注解实现将Controller方法返回java对象转换为json响应给客户端。

  1. 请求json,响应json实现:

    1. 加入jar包

如果需要springMVC支持json,必须加入json的处理jar

我们使用Jackson这个jar,如下图:

  1. ItemController编写
/*** 测试json的交互* @param item* @return*/@RequestMapping("testJson")// @ResponseBodypublic @ResponseBody Item testJson(@RequestBody Item item) {return item;}
  1. 测试方法

在资料中找到js,拷贝到项目中

在itemEdit.jsp中添加测试方法:

<script type="text/javascript" src="${pageContext.request.contextPath }/js/jquery-1.4.4.min.js"></script>

<script type="text/javascript">

$(function(){

//alert(1);

var params = '{"id": 1,"name": "测试商品","price": 99.9,"detail": "测试商品描述","pic": "123456.jpg"}';

//   $.post(url,params,function(data){

//回调

//   },"json");//

$.ajax({

url : "${pageContext.request.contextPath }/testJson.action",

data : params,

contentType : "application/json;charset=UTF-8",//发送数据的格式

type : "post",

dataType : "json",//回调

success : function(data){

alert(data.name);

}

});

});

</script>

  1. 配置json转换器

如果不使用注解驱动<mvc:annotation-driven />,就需要给处理器适配器配置json转换器,参考之前学习的自定义参数绑定。

在springmvc.xml配置文件中,给处理器适配器加入json转换器:

<!--处理器适配器 -->   (一般不用特意去加)

 <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"><property name="messageConverters"><list><bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"></bean></list></property></bean>

SpringMVC的json数据交互相关推荐

  1. SpringMVC入门(二)—— 参数的传递、Controller方法返回值、json数据交互、异常处理、图片上传、拦截器

    SpringMVC入门(二)-- 参数的传递.Controller方法返回值.json数据交互.异常处理.图片上传.拦截器 参考文章: (1)SpringMVC入门(二)-- 参数的传递.Contro ...

  2. (转)SpringMVC学习(十)——SpringMVC与前台的json数据交互

    http://blog.csdn.net/yerenyuan_pku/article/details/72514022 json数据格式在接口调用中.html页面中比较常用,json格式比较简单,解析 ...

  3. springMVC之与json数据交互方法

    2019独角兽企业重金招聘Python工程师标准>>> 因为我也要返回json数据.所以需要这个注解@ResponseBody,把Java对象转换成json字符串 注意:  1.@R ...

  4. 六、Springmvc json数据交互

    editItem.jsp <script type="text/javascript">$(function(){alert(111);var params = '{& ...

  5. springMVC JSON数据交互

    1.引入jackson 2.编写POJO 3.编写Controller 3.1.javabean接收 3.2.Map接收 4.访问测试 4.1.设置基本请求参数 4.2.设置请求参数,发送请求 为实现 ...

  6. json数据交互与@RequestBody

    @RequestBody @RequestBody注解用于读取http请求的内容(字符串),通过springmvc提供的HttpMessageConverter接口将读到的内容(json数据)转换为j ...

  7. Spring MVC JSON数据交互(附带实例)

    Spring MVC 在数据绑定的过程中需要对传递数据的格式和类型进行转换,它既可以转换 String 等类型的数据,也可以转换 JSON 等其他类型的数据.本节将针对 Spring MVC 中 JS ...

  8. JSON数据交互和RESTful支持

    JSON数据交互和RESTful支持 SpringMVC在数据绑定的过程中,需要对传递数据的格式和类型进行转换,它既可以转换String类型的数据,也你能够转换JSON等其他类型的数据. JSON数据 ...

  9. SpringMVC接收json数据转对象中的一些问题(415错误的解决)

    SpringMVC接收json数据转对象中的一些问题(415错误的解决) 参考文章: (1)SpringMVC接收json数据转对象中的一些问题(415错误的解决) (2)https://www.cn ...

最新文章

  1. 设计模式之状态模式(State)摘录
  2. Linux Load Average高但磁盘IO和CPU占用率不高的可能原因
  3. Zookeeper系列五:Master选举、ZK高级特性:基本模型
  4. yum 安装jdk_03Centos安装JDK
  5. idea JDK安装与配置
  6. 面试题11. 旋转数组的最小数字
  7. (90)FPGA十进制计数器设计-面试必问(十四)(第18天)
  8. 微信小程序发力搜索,开发者变现难,揭秘小程序行业真实现状
  9. Python、Java、C#、Perl 创始人聚首,编程语言要变天?
  10. pfSense修改mbuf值
  11. Atian inputmethod 输入法解决方案 方言与多语言多文字支持 英语汉字汉语阿拉伯文的支持 (au
  12. Kotlin教程(一)基础
  13. 备用计算机机房管理制度,计算机机房管理规定
  14. 如何做杜邦线、XH线 制作方法
  15. ASP.NET AES加密
  16. GGC/ITF/国自然
  17. 微信小程序-JavaScript 3DES对称加密算法加密使用
  18. 大国的崛起:第一集:海洋时代(开篇·葡西)
  19. Linux系统裁剪summary
  20. 联通宽带拨号开机自动连接

热门文章

  1. 配置sqlplus的AUTOTRACE
  2. 机器学习之使用贝叶斯算法实现拼写检查器
  3. JDK1.8聚合操作
  4. Lost and Found(结对项目)功能实现
  5. php常用函数字符串操作回顾
  6. hdu 1728 逃离迷宫(dFS+优先队列)
  7. 企业实战|基于Cobbler实现多版本系统批量部署
  8. 1 Linux SSH安全加固
  9. java中 有return 的情况,return以及try,finally代码块的执行顺序
  10. 关于ibatis的SQL注入。