SpringMvc采用 http+json 实现前后端交互
2017-08-11 16:15
477 查看
演示列表
[b]报文表示[/b]
<jackson.version>2.4.4</jackson.version>
</properties>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
/GetJson.do::JsonResBean:HttpResults [result11=res11-req11, result12=res12-req12, result21=res21-req21, result22=res21-req22]
/PostJson1.do::JsonResBean:HttpResults [result11=res11-req11, result12=res12-req12, result21=res21-req21, result22=res21-req22]
/PostJson2.do::JsonResBean:HttpResults [result11=res11-req11, result12=res12-req12, result21=res21-req21, result22=res21-req22]
如果传输的是单层json数据,可以使用@RequestParam接收,它会把前台传输过来的json转化为后台对应的Map<String,Object>对象
如果传输的是单层json数据,可以使用@RequestBody接收,它会把前台传输过来的json转化为后台对应的Map<String,Object>对象
ajax请求返回json数据
我们通常这样做,使用response.getWriter()写回json数据:
@ResponseBody只要一个注解就搞定上述输出了!
[b]报文表示[/b]
一、Json请求和Json响应
实现:Spring4.1.1.RELEASE + jackson2.4.4+JQuery1.10.21、pom.xml
<properties><jackson.version>2.4.4</jackson.version>
</properties>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
2、web.xml
3、SpringRest-servlet.xml
二、业务代碼
1、GetJson2::@RequestBody/Simple- @ResponseBody
1.1、action
1.2、jsp
1.3、測試
2.4、报文
/GetJson.do::JsonParams:param11=req11,param12=req12,param21=req21,param22=req22/GetJson.do::JsonResBean:HttpResults [result11=res11-req11, result12=res12-req12, result21=res21-req21, result22=res21-req22]
2、PostJson1::@RequestBody/Map - @ResponseBody
2.1、action
2.2、jsp
2.3、測試
2.4、报文
/PostJson1.do::JsonParams:HttpParams [param11=req11, param12=req12, param21=req21, param22=req22]/PostJson1.do::JsonResBean:HttpResults [result11=res11-req11, result12=res12-req12, result21=res21-req21, result22=res21-req22]
3、PostJson2::@RequestBody/Bean - @ResponseBody
3.1、action
3.2、jsp
3.3、測試
3.4、报文
/PostJson2.do::JsonParams:{param11=req11, param12=req12, param21=req21, param22=req22}/PostJson2.do::JsonResBean:HttpResults [result11=res11-req11, result12=res12-req12, result21=res21-req21, result22=res21-req22]
4、返回1个参数对象
4.1、代码
4.2、测试
5、返回多个参数对象
5.1、action
5.2、配置 (SpringRest-servlet.xml)
5.3、测试
三、附录
1、@RequestParam
@RequestParam、@RequestBody用于接受客户端的JSON数据,GET请求好像只能用@RequestParam如果传输的是单层json数据,可以使用@RequestParam接收,它会把前台传输过来的json转化为后台对应的Map<String,Object>对象
2、@RequestBody
@RequestParam、@RequestBody用于接受客户端的JSON数据,GET请求好像不能用@RequestBody如果传输的是单层json数据,可以使用@RequestBody接收,它会把前台传输过来的json转化为后台对应的Map<String,Object>对象
3、@ResponseBody
@ResponseBody用于将JSON数据返回客户端,如:ajax请求返回json数据
我们通常这样做,使用response.getWriter()写回json数据:
@ResponseBody只要一个注解就搞定上述输出了!
相关文章推荐
- 利用SpringMVC实现基于Http和Json的轻量级RPC框架
- 采用JSON交互信息的android端和Struts2服务器端通信,使用了HttpClient与HttpPos
- nodeJS的原生http服务利用插件实现前后端交互
- 使用fastjson与SpringMVC实现自定义HttpMessageConverter接收和获取JSON格式的数据
- springmvc实现json交互-requestBody和responseBody
- springmvc实现json交互-准备环境
- Ajax实例:实现查找员工和新建员工,利用XMLHttpRequest对象实现前后端交互
- android端和Struts2服务器端通信,交互信息,参数采用JSON,使用了HttpClient与HttpPost类
- SpringMVC之json数据交互,RestFul风格与拦截器实现
- android端和Struts2服务器端通信,交互信息,参数采用JSON,使用了HttpClient与HttpPost类
- fastjson和SpringMVC实现自定义HttpMessageConverter接收和获取JSON格式的数据
- springmvc实现json交互 -requestBody和responseBody
- springmvc实现json交互-requestBody和responseBody
- springmvc实现json交互-requestBody和responseBody
- 【SpringMVC整合MyBatis】springmvc实现json交互-requestBody和responseBody
- SpringMVC 与 Json实现数据交互
- 【SpringMVC整合MyBatis】springmvc实现json交互-requestBody和responseBody
- android端和Struts2服务器端通信,交互信息,参数采用JSON,使用了HttpClient与HttpPost类
- springmvc实现json交互-requestBody和responseBody
- android端和Struts2服务器端通信,交互信息,参数采用JSON,使用了HttpClient与HttpPost类