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中需要如下配置 一.前后端 ...
随机推荐
- SQL系列(十三)—— 关于表的DDL
前面的文章一直都在讲述关于DML方面的SQL Statement.这篇文章来说说表方面的DDL: CREATE 创建表 ALTER 修改表 DROP 删除表 CREATE 1.语法 CREATE TA ...
- [转] js async await 终极异步解决方案
阅读目录 回顾 Promise async await 字面理解 async.await 如何执行 await 操作符 总结 既然有了promise 为什么还要有async await ? 当然是pr ...
- [K8s 1.9实践]Kubeadm 1.9 HA 高可用 集群 本地离线镜像部署
k8s介绍 k8s 发展速度很快,目前很多大的公司容器集群都基于该项目,如京东,腾讯,滴滴,瓜子二手车,北森等等. kubernetes1.9版本发布2017年12月15日,每是那三个月一个迭代, W ...
- Spring AOP 复习
Aspect Oriented Programming 通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术,利用aop可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降 ...
- 【转载】UiPath,UiPath教程,UiPath视频教程 RPA
第一课-UiPath简介 第二课-变量和数据类型第1部分-基础讲解 第二课-变量和数据类型第2部分-实例讲解 第二课-流程控制第1部分-ifelse语句讲解 第二课-流程控制第3部分-高级流程控制语句 ...
- Javascript中创建函数的几种方法
// 工厂函数模式 // 无法解决对象识别问题 function person0(name, age, job) { var obj = new Object(); obj.name = name; ...
- android解析xml (pull)
1. xml <persons> <person id="18"> <name>furong</name> <age>2 ...
- 关于mybaits的注解@Param
一.含义 @param作为dao层的注解,为了解决多个参数时,参数类型不一致的问题. <select id="findEmpById" resultType="co ...
- k8s 初识pod (二)
kubernetes中调用pod到哪个节点上是无关紧要的,但由于实际情况,每台node的硬件环境不一致,所以某些情况要求将不同pod调到指定节点上运行.也可以通过label实现. kubectl la ...
- 基于PXE网络启动的Linux系统自动化安装
在实际工作中,传统纯手动安装操作系统的方式是有一定的局限性的,例如:现在大多数的服务器都不自带光驱,若要安装系统需要外接光驱插入光盘,整个安装过程中需要人工交互确认,手动设置每一个安装设置项,人必 ...