一起学SpringMVC之Json
本文主要以一个简单的小例子,简述SpringMVC开发中,Json的相关应用,仅供学习分享使用,如有不足之处,还请指正。
什么是Json ?
- JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation),是轻量级的文本数据交换格式,比 XML 更小、更快,更易解析。
- JSON 独立于语言:JSON 使用 Javascript语法来描述数据对象,但是 JSON 仍然独立于语言和平台。
- JSON 具有自我描述性,更易理解。
SpringMVC支持Json操作步骤
在SpringMVC支持注解的基础之上,需要支持Json格式返回数据,步骤如下:
1. 导入jackson的三个支持的包(如果没有导入包,会报406错误)
需要导入的Jar包如下:
//三个需要需要人的jackson包
jackson-annotations-2.2.1.jar
jackson-core-2.2.1.jar
jackson-databind-2.2.1.jar
2. 在方法上增加一个注解@ResponseBody
如下所示:
/**
* 如果要返回Json,需要增加注解@ResponseBody,否则会当成路径返回
* 如果返回406错误,则是包缺失
* @return
*/
@RequestMapping("/json01")
@ResponseBody
public String json01(){
System.out.println("json 被调用。。。。。");
return "Hello world!!!";
}
3. 访问
打开浏览器,输入网址,如下所示:

SpringMVC返回不同类型的Json
1. 返回数组
如下所示,直接返回String[]即可。
/**
* 返回数组
* @return
*/
@RequestMapping("/json02")
@ResponseBody
public String[] json02(){
System.out.println("json 被调用。。。。。");
String[] arr=new String[]{"小明","小花"};
return arr;
}
页面如下所示:

2. 返回类对象
如下所示:直接返回User对象
/**
* 返回对象
* @return
*/
@RequestMapping("/json03")
@ResponseBody
public User json03(){
System.out.println("json 被调用。。。。。");
User user=new User(1l,"张三",3,new Date());
return user;
}
如下图所示:返回的是Json格式的对象

如果返回的对象中有日期格式,则需要处理返回的格式
/**
* 从后台到前台,设置的格式
* @return
*/
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
public Date getDate() {
return date;
} /**
* 从前台到后台,接收时设置参数格式
* @param date
*/
@DateTimeFormat(pattern="yyyy-MM-dd")
public void setDate(Date date) {
this.date = date;
}
3. 返回对象列表
如下所示:返回的是List<User>对象列表
/**
* 返回对象列表
* @return
*/
@RequestMapping("/json04")
@ResponseBody
public List<User> json04(){
System.out.println("json 被调用。。。。。");
List<User> lst=new ArrayList<User>();
User zs=new User(1l,"张三",3,new Date());
User ls=new User(2l,"李四",4,new Date());
User ww=new User(3l,"王五",5,new Date());
lst.add(zs);
lst.add(ls);
lst.add(ww);
return lst;
}
如下图所示:返回的是一个对象的数组

备注
莫听穿林打叶声,何妨吟啸且徐行。竹杖芒鞋轻胜马,谁怕?一蓑烟雨任平生。
一起学SpringMVC之Json的更多相关文章
- SpringMVC学习--json
简介 json数据格式在接口调用中.html页面中较常用,json格式比较简单,解析还比较方便.比如:webservice接口,传输json数据. springmvc与json交互 @RequestB ...
- 【Spring学习笔记-MVC-3.1】SpringMVC返回Json数据-方式1-扩展
<Spring学习笔记-MVC>系列文章,讲解返回json数据的文章共有3篇,分别为: [Spring学习笔记-MVC-3]SpringMVC返回Json数据-方式1:http://www ...
- 【转】跟着开涛学SpringMVC
跟着开涛学SpringMVC 第一章源代码下载 博客分类: 跟开涛学SpringMVC 跟开涛学SpringMVC 源代码请到附件中下载. 其他下载: 跟着开涛学SpringMVC 第一章源代码下载 ...
- 跟我学SpringMVC目录汇总贴、PDF下载、源码下载
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- SpringMVC关于json、xml自动转换的原理研究[附带源码分析 --转
SpringMVC关于json.xml自动转换的原理研究[附带源码分析] 原文地址:http://www.cnblogs.com/fangjian0423/p/springMVC-xml-json-c ...
- springMvc中406错误解决,springMvc使用json出现406 (Not Acceptable)
springMvc中406错误解决, springMvc使用json出现406 (Not Acceptable) >>>>>>>>>>> ...
- springMvc解决json中文乱码
springMvc解决json中文乱码 springMvc解决json中文乱码,springMvc中文乱码,spring中文乱码 >>>>>>>>> ...
- Spring Web MVC中的页面缓存支持 ——跟我学SpringMVC系列
Spring Web MVC中的页面缓存支持 ——跟我学SpringMVC系列
- 学SpringMVC收藏
一个较完整的SpringMVC工程的配置 2014-01-22 17:17:25 标签:java spring springMVC 配置 springSecurity web.xml 原创作品,允许 ...
随机推荐
- CentOS7.2下部署zabbix4.0
整体部署采用centos7+php+apache+mariadb 基础环境配置优化 1. 关闭防火墙 [root@monitor_53 ~]$ systemctl stop firewalld [ro ...
- 日志介绍与rsyslogd服务管理与配置
一.日志简介 1.日志相关服务介绍 在 CentOS 6.x 中日志服务使用 rsyslogd 服务,rsyslogd 具有以下特点: 基于 TCP 网络协议传输日志信息 更安全的网络传输方式 有日志 ...
- python获取淘宝登入cookies
重点:去新浪微博登入接口登入 一.代码 # coding=utf-8 import requests from selenium.webdriver.common.by import By from ...
- js获取当前时间的年月日时分秒以及时间的格式化
1.获取当前时间 var myDate = new Date(); 2.获取时间中的年月日时分秒 myDate.getYear(); // 获取当前年份(2位) myDate.getFullYear( ...
- leaflet 结合 geoserver 实现地图属性查询(附源码下载)
前言 leaflet 入门开发系列环境知识点了解: leaflet api文档介绍,详细介绍 leaflet 每个类的函数以及属性等等 leaflet 在线例子 leaflet 插件,leaflet ...
- ubuntu下安装截图工具
安装shutter 1.添加安装包软件源 sudo add-apt-repository ppa:shutter/ppa 2.更新软件源并且安装 sudo apt-get update sudo ap ...
- Java 程序员最喜欢使用的日常工具
多年来,Java 始终是企业应用程序的支柱.最近几年,Java 也是 Android 开发的首选编程语言.不过开发人员如何使用这种语言呢?一项新的研究阐明了主要使用 Java 的开发人员的工作类型,以 ...
- JVM G1垃圾回收算法简要介绍
JVM G1垃圾回收算法简要介绍 G1的特点 能够像CMS垃圾回收算法一样并发操作应用线程(潜台词:多核) 无需太长时间即可压缩空闲内存空间(潜台词:不会引起太多的GC停顿时间) 尽可能地让GC时长可 ...
- tf读取图片,matplotlib可视化
代码: """ 使用tf读取图片 """ import tensorflow as tf import matplotlib.pyplot ...
- Python如何运行程序
人生苦短,我用Python. 作为一个开发人员,如何写代码是必须要知道的,代码如何运行也是有必要了解的.通过了解代码如何运行,可指导我们写出效率更高的代码.下午看了<Python学习手册> ...