作用
获取整个请求体。如下图所示:如果出现乱码。多半就是转码失败了。一般在ajax请求可自己设置,下面会有书写。
如果不加该注释,则是获取对应的参数。如下图所示:
运用
RequestBody一般用于得到ajax请求,响应json数据类型
案例·ajax请求
- 搭建环境
- 导入
jquey.min.js
文件 - 告知前端控制器不要拦截静态资源文件
- 导
jackson
包
- 导入
- 响应json数据发送ajax请求
- 响应json数据响应ajax请求
搭建环境
- 导入
jquey.min.js
文件
<script src="js/jquery.min.js"></script>
- 告知前端控制器不要拦截静态资源文件
<mvc:resources location="/js/" mapping="/js/**"/> <!-- 不拦截js文件 -->
- 导
jackson
包
<!-- jackson包 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.9.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.9.0</version>
</dependency>
响应json数据发送ajax请求
书写前端控制代码。利用jquey.min.js
发送ajax
请求。用于后台接受。
<script>
$(function(){
$("#btn1").click(function () {
//alert("发送ajax请求成功");
$.ajax({
// 编写json格式,设置属性和值
url:"textRequestBody",
contentType:"application/json;charset=UTF-8",
data:'{"username":"小新","password":"123","age":"12"}',
dataType:"json",
type:"post",
success:function (data) { // 回调函数。成功了之后
// data服务器响应的json格式。进行解析
}
});
});
});
</script>
在后台对应url
类中的方法上参数前,添加@RequestBody
当点击了之后,后台就将json数据送给参数进行解析。
在发送ajax请求,java程序接受ajax请求的时候,可以自行书写参数。参数可以是基本数据类型、String数据类型、甚至可以是Javabean对象。jackson包,已经帮我们封装好了。
响应json数据响应ajax请求
从上面那个图片,可以看出来,我添加了返回值,并在返回值前面添加了@ResponseBody
注释。没错这就是响应ajax请求递给我们的ajax回调函数。比如:我们用最简单的例子响应。如下所示: