JSON数据交互
2018-05-19 本文已影响0人
常威爆打来福
一 JSON简介
二 json数据交互
(1)请求json,输出json, 需要请求数据为json,需要在前端转为json不太方便。不常用。
(2)请求key/value、输出json,常用。
JSON交互
三 环境搭建
1 jar包(maven)
<!--json包-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.7.2</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.13</version>
</dependency>
2 配置json转换器(在适配器中配置)
<!--注解适配器 -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"></bean>
</list>
</property>
</bean>
3 注意如果使用<mvc:annotation-driven />则不用定义上边的内容。
四 测试(输入json,输出json)
页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
<script src="js/jquery.min.js"></script>
<script type="text/javascript">
$(function () {
$("#button").click(function () {
$.ajax({
type:'post',
url:'/json/jsonTest.action',
data:'{"username":"张三","sex":"男"}',
contentType:'application/json;charset=utf-8',
success:function (data) {
$("#content").append('username'+data.username+'<br>'+'sex'+data.sex);
}
});
});
});
</script>
</head>
<body>
<input type="button" value="点击提交" id="button">
<div id="content"></div>
</body>
</html>
controller
@Controller
@RequestMapping("/json")
public class JsonController {
@RequestMapping("/jsonTest")
public @ResponseBody User jsonTest(@RequestBody User user){
return user;
}
}
测试页面
测试成功