演示列表

报文表示

一、Json请求和Json响应

实现:Spring4.1.1.RELEASE + jackson2.4.4+JQuery1.10.2

1、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 实现前后端交互的更多相关文章

  1. ajax学习----json,前后端交互,ajax

    json <script> var obj = {"name": "xiaopo","age": 18,"gender ...

  2. content-type常见类型辨析(以ajax与springmvc前后端交互为例)

    博客搬家: content-type常见类型辨析(以ajax与springmvc前后端交互为例) 在http报文的首部中,有一个字段Content-type,表示请求体(entity body)中的数 ...

  3. JSON(及其在ajax前后端交互的过程)小识

    一. json介绍 json是一种轻量级的数据交换格式,规则很简单: 并列的数据之间用逗号(,)分隔: 映射用冒号(:)表示: 并列数据的集合(数组)用方括号([])表示: 映射的集合(对象)用大括号 ...

  4. 前后端交互实现(nginx,json,以及datatable的问题相关)

    1.同源问题解决 首先,在同一个域下搭建网络域名访问,需要nginx软件,下载之后修改部分配置 然后再终端下cmd  nginx.exe命令,或者打开nginx.exe文件,会运行nginx一闪而过, ...

  5. Django之META与前后端交互

    Django之META与前后端交互 1 提交表单之GET 前端提交数据与发送 1)提交表单数据 2)提交JSON数据 后端的数据接收与响应 1)接收GET请求数据 2)接收POST请求数据 3)响应请 ...

  6. Servlet实现前后端交互的原理及过程解析

    在日常调试项目时,总是利用tomcat去启动项目,并进行前后端联调,但对于前后端的请求响应的交互原理及过程并不是特别清晰. 为什么在前端发出相应请求,就能跳转到后端通过程序得到结果再响应到前端页面呢? ...

  7. web前后端交互,nodejs

    手机赚钱怎么赚,给大家推荐一个手机赚钱APP汇总平台:手指乐(http://www.szhile.com/),辛苦搬砖之余用闲余时间动动手指,就可以日赚数百元 web前后端交互 前后端交互可以采用混合 ...

  8. Node之简单的前后端交互

    node是前端必学的一门技能,我们都知道node是用的js做后端,在学习node之前我们有必要明白node是如何实现前后端交互的. 这里写了一个简单的通过原生ajax与node实现的一个交互,刚刚学n ...

  9. 百度ueditor的图片上传,前后端交互使用

    百度ueditor的使用 一个文本编辑器,看了网上很多文档写的很乱,这里拾人牙慧,整理下怎么使用. 这个东西如果不涉及到图片附件上传,其实很简单,就是几个前端文件,直接引用,然后配置下ueditor. ...

随机推荐

  1. IM-iOS退出后台接受消息,app退出后台能接收到推送

    App被失活状态的时候可以走苹果的APNS:但是在活跃的时候却接受不到推送! 那就用到本地推送:UILocalNotification 消息神器. 处理不好可能会有很多本地推送到来,那么问题来了要在什 ...

  2. 记录使用CI框架开发项目时遇到的问题

    关于CI框架在视图文件中怎样引入静态资源文件(js,css,images)的问题: 第一步:在application/config/config.php文件中配置  $config['base_url ...

  3. parted分区和挂载及非交互式操作

    author : headsen  chen date : 2017-11-17  09:45:36 个人原创,转载请注明作者,出处,否则依法追究法律责任 1,将磁盘上原有的分区删除掉: 进入:#pa ...

  4. 数字不断递增 可控制js

    (function($){ $.fn.numberRock=function(options){ var defaults={ speed:, count: }; var opts=$.extend( ...

  5. 聊一聊JS的原型链之高级篇

    首先呢JS的继承实现是借助原型链,原型链即__proto__形成的链条. 下面一个例子初步认识下原型链: function Animal (){ } var cat = new Animal() 我们 ...

  6. vue技术解析二之组件通信

    --------------------------动画效果----------------------------------- <transition name="router-f ...

  7. Tomcat 开启Gzip压缩

    原理简介         HTTP 压缩可以大大提高浏览网站的速度,它的原理是,在客户端请求服务器对应资源后,从服务器端将资源文件压缩,再输出到客户端,由客户端的浏览器负责解压缩并浏览.相对于普通的浏 ...

  8. Algorithm --> 树中求顶点A和B共同祖先

    树中求顶点A和B共同祖先 题目: 给定一颗树,以及两个顶点A和B,求最近的共同祖先,和包含的子顶点个数? 比如:给定如下图的树,以及顶点13和8,则共同祖先为3,以3为root的子顶点共有8个

  9. android studio视频教学

    英语+中文字幕: http://www.apkbus.com/plugin.php?id=buskc&modo=learn&kcid=82 中文字幕: http://www.maizi ...

  10. Spring MVC的handlermapping之BeanNameUrlHandlerMapping初始化

    先介绍一下: BeanNameUrlHandlerMapping是基于配置文件的方式; 所有处理器需要在XML文件中,以Bean的形式配置. 缺点:配置繁琐; 如果多个URL对应同一个处理器,那么需要 ...