SpringMVC(十三):SpringMVC 与fastjson集成
1)fastjson jar包下载地址:https://sourceforge.net/projects/fastjson/
下载完成后需要把jar包拷贝到WEB-INF/lib文件夹中。
2)使用pom.xml配置:
如果你使用了Maven,maven repository配置如下:
<repository><id>opensesame</id><name>Alibaba OpenSource Repsoitory</name><url>http://code.alibabatech.com/mvn/releases/</url><snapshots><enabled>false</enabled></snapshots> </repository>
pom.xml文件中加入依赖依赖:
<dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.1.34</version> </dependency>
使用springmvc的情况下,需要在springmvc.xml中添加配置信息:
<!-- 基于Annotation的映射方式 --> <mvc:annotation-driven > <mvc:message-converters register-defaults="true"> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <constructor-arg value="UTF-8" /> </bean> <!-- <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/html;charset=UTF-8</value> </list> </property> </bean> --> <bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter"> <property name="supportedMediaTypes" value="text/html;charset=UTF-8"/> <property name="features"> <array> <value>WriteMapNullValue</value> <value>WriteNullStringAsEmpty</value> </array> </property> </bean> </mvc:message-converters> </mvc:annotation-driven>
测试类:
1 public class User { 2 private Long id; 3 private String name; 4 5 public Long getId() { return id; } 6 public void setId(Long id) { this.id = id; } 7 8 public String getName() { return name; } 9 public void setName(String name) { this.name = name; } 10 } 11 public class Group { 12 private Long id; 13 private String name; 14 private List<User> users = new ArrayList<User>(); 15 16 public Long getId() { return id; } 17 public void setId(Long id) { this.id = id; } 18 19 public String getName() { return name; } 20 public void setName(String name) { this.name = name; } 21 22 public List<User> getUsers() { return users; } 23 public void setUsers(List<User> users) { this.users = users; } 24 } 25 26 import com.alibaba.fastjson.JSON; 27 28 Group group = new Group(); 29 group.setId(0L); 30 group.setName("admin"); 31 32 User guestUser = new User(); 33 guestUser.setId(2L); 34 guestUser.setName("guest"); 35 36 User rootUser = new User(); 37 rootUser.setId(3L); 38 rootUser.setName("root"); 39 40 group.getUsers().add(guestUser); 41 group.getUsers().add(rootUser); 42 43 String jsonString = JSON.toJSONString(group); 44 System.out.println(jsonString); 45 46 Group group2 = JSON.parseObject(jsonString, Group.class);
SpringMVC中使用:
package com.dx.springlearn.hanlders;import java.io.IOException; import java.io.PrintWriter; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;import com.alibaba.fastjson.JSON;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.servlet.ModelAndView;import com.dx.springlearn.entities.Account; import com.dx.springlearn.entities.WSUserInfo;@Controller public class TestModelData {private final String SUCCESS = "success";@RequestMapping(name = "/postUser", method = RequestMethod.POST)public void postUser(String openid, String lng, String lat, HttpServletRequest request,HttpServletResponse response) {System.out.println("post user..." + openid + "," + lat + "," + lng);}@RequestMapping(name = "/getUserList", method = RequestMethod.GET)public void getUserList(String lng, String lat, HttpServletRequest request, HttpServletResponse response) {System.out.println("get user list...." + lat + "," + lng);List<WSUserInfo> userItems = new ArrayList<>();for (int i = 0; i < 10; i++) {userItems.add(new WSUserInfo("openid" + i, "120.082" + i, "30.238" + i));}try {//String jsonlist="[{\"openid\":\"openid0\",\"longitude\":\"120.0820\",\"latitude\":\"30.2380\"},{\"openid\":\"openid1\",\"longitude\":\"120.0821\",\"latitude\":\"30.2381\"}]";String jsonString = JSON.toJSONString(userItems);PrintWriter out = response.getWriter();out.print(jsonString);out.flush();out.close();} catch (IOException e) {// TODO Auto-generated catch block e.printStackTrace();}} }package com.dx.springlearn.entities;public class WSUserInfo {private String openid;private String longitude;private String latitude;public WSUserInfo(String openid, String longitude, String latitude) {super();this.openid = openid;this.longitude = longitude;this.latitude = latitude;}public String getOpenid() {return openid;}public void setOpenid(String openid) {this.openid = openid;}public String getLongitude() {return longitude;}public void setLongitude(String longitude) {this.longitude = longitude;}public String getLatitude() {return latitude;}public void setLatitude(String latitude) {this.latitude = latitude;} }
SpringMVC(十三):SpringMVC 与fastjson集成相关推荐
- java+springmvc+vo,springmvc+mybatis的实例详解
前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(十三)--SpringMVC入门程序(二) 1.需求 使用springmvc和mybatis完成商品列表查询. 2.整合思路 ...
- springmvc原理+springmvc面试题
一.MVC模式 MVC是 model.view.和controller的缩写,分别代表web应用程序中的三种职责: model-模型:用于存储数据以及能处理用户请求的业务逻辑 view-视图:向控制器 ...
- SpringMVC校验---SpringMVC学习笔记(八)
校验的理解 项目中,通常使用较多是前端的校验,比如页面中js校验.对于安全要求较高点建议在服务端进行校验. 服务端校验: 控制层conroller:校验页面请求的参数的合法性.在服务端控制层conro ...
- Spring Security技术栈学习笔记(十三)Spring Social集成第三方登录验证开发流程介绍
开发第三方登录,我们必须首先要了解OAuth协议(本文所讲述的OAuth协议指的是OAuth2协议),本文首先简单介绍OAuth协议,然后基于Spring Social来阐述开发第三方登录需要做哪些准 ...
- 【 第六章 拦截器,注解配置springMVC,springMVC执行流程】
第六章 拦截器,注解配置springMVC,springMVC执行流程 1.拦截器: ①springMVC中的拦截器用于拦截控制器方法的执行. ②springMVC的拦截器需要实现HandlerInt ...
- springmvc+spring+mybatis+maven项目集成shiro进行用户权限控制【转】
项目结构: 1.maven项目的pom中引入shiro所需的jar包依赖关系 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 ...
- SpringMVC学习(三)——SpringMVC+Slf4j+Log4j+Logback日志集成实战分享
文章目录 1.概述 1.1 说明 1.2 日志体系 1.2.1 JCL日志面门介绍 1.2.2 Slf4j日志面门介绍 2.几种日志系统介绍: 2.1 Slf4j 2.2 Commons-loggin ...
- SpringMVC Spring Mybatis Druid SpringSession集成例子
本文主要介绍SpringMVC Spring Mybatis Druid SpringSession如何集成. 源代码分享在github https://github.com/chenhaifeng2 ...
- 【SpringMVC】SpringMVC和Spring集成
文章目录 SpringMVC和Spring集成 首先目录结构如下 1.配置web.xml <?xml version="1.0" encoding="UTF-8&q ...
最新文章
- NPOI读取Excel数据应用
- 用AI打造科技公益新模式,腾讯发起公益创新挑战赛,聚焦三大社会问题
- 交换机与路由器大战已结束,超大规模计算公司胜出
- JavaScript 中 window.setTimeout() 的详细用法
- 在diy的文件系统上创建文件的流程
- php mysql 菜鸟_PHP 和 MySQL 基础教程(四)
- JavaScript数据结构与算法(1)(数组、栈、队列、链表)(ES6)
- 图注意力网络_EMNLP 2019开源论文:针对短文本分类的异质图注意力网络
- 摩托罗拉edge X30屏下版真机首曝:四边等宽 屏下显示效果出众
- asterisk远程注册
- STM32:win10装CH340驱动、获取删除权限
- 再谈关于IP数据报分片
- WP7 页面事件触发顺序测试
- twr java_Java7新特性 - TWR(try-with-resources)
- FPGA与普通CPU的区别
- sublime插件 —— 一键美化HTML/CSS/JS代码
- 【Android】google plus、Facebook登陆sdk集成打包出aar的使用步骤
- CentOS 7 腾讯云服务器 Linux无图形化界面静默安装oracle数据库.
- Java 贪吃虫小游戏
- 计算机网络课程设计报告 计算校验和 湖南文理学院,湖南文理学院课程设计 计算机网络实验室综合布线系统的设计与测试...