5.学习springmvc响应json数据
一.配置不过滤静态资源文件:用来访问webapp中js,css,images文件
1.修改springmvc.xml

<!--配置前端控制器,用于设置哪些资源不拦截-->
<mvc:resources location="/css/" mapping="/css/**"/> <!-- 样式 -->
<mvc:resources location="/images/" mapping="/images/**"/> <!-- 图片 -->
<mvc:resources location="/js/" mapping="/js/**"/> <!-- javascript -->
2.jsp:

<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html>
<head>
<title>response</title>
<script src="js/jquery.min.js"></script>
<script>
//页面加载,绑定点击事件
$(function () {
$("#btn").click(function () {
alert("hello btn");
});
});
</script>
</head>
<body> <a href="user/testString">testString</a> <br>
<a href="user/testVoid">testVoid</a> <br>
<a href="user/testModelAndView">testModelAndView</a> <br>
<a href="user/testForwardOrRedirect">testForwardOrRedirect</a> <br> <button id="btn">发送ajax的请求</button>
</body>
</html>
展示:

二.客户端发送json请求给服务器端
jsp:

<script>
//页面加载,绑定点击事件
$(function () {
$("#btn").click(function () {
// alert("hello btn"); //发送ajax请求
$.ajax({
//编写json格式数据,设置属性值
url:"user/testAjax",
contentType:"application/json;charset=UTF-8",
data:'{"username":"哈哈","password":"123","age":30}',
dataType:"json",
type:"post",
success:function (data) {
//data服务器响应的json的数据,进行解析
}
})
});
});
</script>
方法:

/**
* 模拟Ajax异步请求响应,RequestBody 获得请求体数据
* @param body
*/
@RequestMapping("/testAjax")
public void testAjax(@RequestBody String body){ System.out.println("testAjax执行了..."); System.out.println(body);
}
执行结果:

三.服务器返回json给客户端
首先需要修改pom.xml导入jackson的jar包用于解析和封装json数据:

<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-core</artifactId>
<version>2.9.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.9.0</version>
</dependency>
jsp:

<script>
//页面加载,绑定点击事件
$(function () {
$("#btn").click(function () {
// alert("hello btn"); //发送ajax请求
$.ajax({
//编写json格式数据,设置属性值
url:"user/testAjax",
contentType:"application/json;charset=UTF-8",
data:'{"username":"哈哈","password":"123","age":30}',
dataType:"json",
type:"post",
success:function (data) {
//data服务器响应的json的数据,进行解析
alert(data.toString()); alert(data.username);
alert(data.password);
alert(data.age);
}
})
});
});
</script>
方法:

/**
* 模拟Ajax异步请求响应,RequestBody:获得请求体数据,ResponseBody:服务器响应数据
*
* @param user
*/
@RequestMapping("/testAjax")
public @ResponseBody User testAjax(@RequestBody User user) { System.out.println("testAjax执行了..."); //客户端发送ajax请求的数据,通过导入jackson的jar包将json数据转换为JavaBean对象user
System.out.println(user.toString()); //模拟数据库查询
user.setUsername("小美");
user.setAge(55); //服务器返回给客户端数据
return user;
}
展示:


5.学习springmvc响应json数据的更多相关文章
- springmvc学习笔记(18)-json数据交互
springmvc学习笔记(18)-json数据交互 标签: springmvc springmvc学习笔记18-json数据交互 springmvc进行json交互 环境准备 加入json转换的依赖 ...
- 【Spring学习笔记-MVC-3.1】SpringMVC返回Json数据-方式1-扩展
<Spring学习笔记-MVC>系列文章,讲解返回json数据的文章共有3篇,分别为: [Spring学习笔记-MVC-3]SpringMVC返回Json数据-方式1:http://www ...
- springmvc 怎么响应json数据
springmvc 怎么响应json数据@Controller@RequestMapping("/items") class ItemsController{ @RequestM ...
- 【Spring学习笔记-MVC-4】SpringMVC返回Json数据-方式2
<Spring学习笔记-MVC>系列文章,讲解返回json数据的文章共有3篇,分别为: [Spring学习笔记-MVC-3]SpringMVC返回Json数据-方式1:http://www ...
- 【Spring学习笔记-MVC-3】SpringMVC返回Json数据-方式1
<Spring学习笔记-MVC>系列文章,讲解返回json数据的文章共有3篇,分别为: [Spring学习笔记-MVC-3]SpringMVC返回Json数据-方式1:http://www ...
- spring MVC 返回值信息和ResponseBody的响应json数据
spring mvc的界面返回: 如果我们定义的返回类型是String 那么我们返回的时候直接写入 我们的界面的名字就可以了 springmvc会自动去找到我们的界面,如果是void类型的返回那么 ...
- SpringMVC(三)-- 视图和视图解析器、数据格式化标签、数据类型转换、SpringMVC处理JSON数据、文件上传
1.视图和视图解析器 请求处理方法执行完成后,最终返回一个 ModelAndView 对象 对于那些返回 String,View 或 ModeMap 等类型的处理方法,SpringMVC 也会在内部将 ...
- SpringMVC返回JSON数据时日期格式化问题
https://dannywei.iteye.com/blog/2022929 SpringMVC返回JSON数据时日期格式化问题 博客分类: Spring 在运用SpringMVC框架开发时,可 ...
- SpringMVC传递JSON数据
文章目录 一.前后端传递和接收JSON数据 1:是要Ajax默认格式来传递数据(*) 2:使用application/json格式来传递数据 二.spring-web.xml中需要如下配置 一.前后端 ...
随机推荐
- Rdlc Mail Label
1.创建报表服务器项目RDLML. 2.新建共享数据源DataMailLabel,设置到数据库AdventureWorks的连接,并为报表指定相应的访问凭据. 3.选择Name.Color.Thumb ...
- ping程序和tracert(traceroute)背后的故事--ICMP协议
为路由器生,为交换机死,为了Ping通奋斗一辈子-----tracert.cn 上面是一个网络工程师的个人定位,很有意思,哈哈!那么我们来看看ping和tracert都是什么吧 PING (Packe ...
- Shell学习笔记之关于 >/dev/null 2>&1 详解
shell中可能经常能看到:>/dev/null 2>&1 命令的结果可以通过%>的形式来定义输出 分解这个组合:“>/dev/null 2>&1” 为五 ...
- 绝对有效 IntelliJ IDEA2019.2下载、安装及破解教程
原文链接:https://blog.csdn.net/weixin_43904316/article/details/88881238 https://bl ...
- B树索引最通俗易懂的介绍
先来一段有莫的对话: 前几天下班回到家后正在处理一个白天没解决的bug,厕所突然传来对象的声音: 对象:xx,你有<时间简史>吗? 我:我去!妹子,你这啥癖好啊,我有时间也不会去捡屎 ...
- C#MVC中ViewData和ViewBag的使用
ViewBag和ViewData的区别 ViewData ViewBag 它是key/value字典集合 它是dynamic类型对象 从asp.net mvc1就有了 从asp.netmvc3才有 基 ...
- 解决IE下打印iframe时,页面比例变小的问题
$('#reportFrame')[0].contentWindow.printMyself();//主页面调用iframe里的打印方法 //reportFrame里的方法 function prin ...
- prometheus搜索指标显示No datapoints found.
在指标能够在下拉框可以选择到的情况下,还有No datapoints found. 则考虑是时区的问题,详见官方issue https://github.com/prometheus/promethe ...
- Django---图书管理系统,多对多(ManyToMany),request获取多个值getlist(),反查(被关联的对象.author_set.all)
Django---图书管理系统,多对多(ManyToMany),request获取多个值getlist(),反查(被关联的对象.author_set.all) 一丶多对多查询 表建立多对多关系的方式 ...
- Apache配置WebSocket代理
引入mod_proxy_wstunnel.so模块,使其可以解析ws.wss协议 LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel ...