主要代码:
添加json依赖:
<!-- json -->
<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-core</artifactId>
<version>${jackson-version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson-version}</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.23</version>
</dependency>
在webmvc-config.xml下配置json乱码处理
<!-- 开启springMVC注解模式 -->
<mvc:annotation-driven conversion-service="conversionService">
<mvc:message-converters>
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>application/json;charset=UTF-8</value>
</list>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
控制层主要代码:
/**
* 进入json数据的处理
*/
@RequestMapping(value="user_json")
public String user_json() {
return "user/user_json";
}
/**
*json数据的处理
*/
@RequestMapping(value="userJson")
@ResponseBody
public String userJson(HttpServletRequest request) {
String id = request.getParameter("id");
String name = request.getParameter("name");
User u = new User();
u.setId(10010);
u.setName("中国联通");
User u2 = new User();
u2.setId(10086);
u2.setName("中国移动");
String str = JSON.toJSONString(u);
System.out.println(str);
List<User> l = new ArrayList<User>();
l.add(u);
l.add(u2);
String str1 = JSON.toJSONString(l);
System.out.println(str1);
return str1;
}
创建json处理页面user_json.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript" src="/ssm_select/js/jquery-3.3.1.js"></script>
<script type="text/javascript">
$(function() {
$('#btn').click(function() {
$.post("/ssm_select/user/userJson",
{id:"10086",name:"中国移动"},
function(data){
for(var i=0;i<data.length;i++){
alert(data[i].id+data[i].name);
}
})
})
})
</script>
</head>
<body>
<a id="btn" href="javascript:(0)">点击获取并在控制台输出</a>
</body>
</html>
测试效果如图,可以获取到json数据并弹出