文档章节

springboot mysql jackson date问题

与龙共舞
 与龙共舞
发布于 2016/07/10 18:28
字数 335
阅读 484
收藏 2

使用环境: springboot jackson mysql


如果数据库中配置的是datetime类型,使用@JsonFormat( pattern = "yyyy-MM-dd")  是没有问题的,但是有些时间不需要带时分秒,所以数据库中弄成了date,就因为这个jsonFormat就不起作用了,返回的前台的还是一大串,经过一翻搜索,最终找到一篇这样的文章:

https://github.com/spring-projects/spring-boot/issues/4065

跟这哥们遇到的问题一样,受这里面一段示例启发

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;

/**
 * @author HS
 * @date 2016年6月12日 下午3:59:24
 * @Description: TODO
 * 
 */
public class TestSvn {

	/**
	 * @author HS
	 * @date 2016年6月12日 下午3:59:24
	 * @Description: TODO
	 *
	 * @param args
	 * @throws JsonProcessingException
	 */
	public static void main(String[] args) throws JsonProcessingException {
		// TODO Auto-generated method stub

		ObjectMapper objectMapper = new ObjectMapper();
		System.out.println(objectMapper.writeValueAsString(new Foo(new java.util.Date())));
		System.out.println(objectMapper.writeValueAsString(new Foo(new java.sql.Date(System.currentTimeMillis()))));

	}

}
public class Foo implements java.io.Serializable {

	@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")
	private Date testDate;

	public Date getTestDate() {
		return testDate;
	}

	public void setTestDate(Date testDate) {
		this.testDate = testDate;
	}

	public Foo(Date testDate) {
		super();
		this.testDate = testDate;
	}
}

自己也敲了这段示例,最开始没加shape = JsonFormat.Shape.STRING,发现跟他输出的结果不一致,第二个输出变成了毫秒数,加上之后就好了,于是才联想到我这的问题

必须要使用如下形式:

@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")

完美解决数据库中是date类型 json转换的问题

© 著作权归作者所有

共有 人打赏支持
与龙共舞

与龙共舞

粉丝 9
博文 12
码字总数 2292
作品 0
海淀
技术主管
私信 提问
自定义jackson解析时间格式yyy-MM-dd HH:mm:ss

1、问题排查 出现的场景: 服务端通过springmvc写了一个对外的接口,返回一个json字符串,其中该json带有日期,格式为yyyy-MM-dd HH:mm:ss 客户端通过feign调用该http接口,指定返回值为一个...

落叶清风
08/08
0
0
Spring Boot学习笔记

RabbitMQ RabbitMQ 安装 linux安装RabbitMQ详细教程 Ubuntu 16.04 RabbitMq 安装与运行(安装篇) ubantu安装rabbitMQ步骤 多线程 Spring @transactional注解和synchronized同步锁同时使用不...

OSC_fly
07/26
0
0
spring(一) spring-json全局序列化

---layout: blogistop: truetitle: "spring-json全局序列化"date: 2018-08-07category: springtags: spring --- 场景介绍 后台传送数据给前端,一般使用json ,多的不说,看个例子: 如果使用...

开心的哈士奇
10/17
0
0
SpringBoot,返回JSON,Long前端精准度丢失,Jackson自定义序列化规则

已经很久没写过springboot的相关博客了,前面一段时间一直在写clojure,导致基本很少关注springboot的一些情况,刚好最近在写一些小玩意,期间,遇到一些问题,然后整理了一下,避免其他小伙伴跟我遇...

贺小五
04/15
0
0
docker(三):使用maven 插件构建docker镜像

---layout: blogistop: truetitle: "使用maven 插件构建docker镜像"date: 2018-09-11category: dockertags: docker --- 介绍 作为一个java后端开发人员,docker如何与Maven 工程相结合是我们...

开心的哈士奇
10/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

PHP生成CSV之内部换行

当我们使用PHP将采集到的文件内容保存到csv文件时,往往需要将采集内容进行二次过滤处理才能得到需要的内容。比如网页中的换行符,空格符等等。 对于空格等处理起来都比较简单,这里我们单独...

豆花饭烧土豆
今天
1
0
使用 mjml 生成 thymeleaf 邮件框架模板

发邮件算是系统开发的一个基本需求了,不过搞邮件模板实在是件恶心事,估计搞过的同仁都有体会。 得支持多种客户端 支持响应式 疼彻心扉的 outlook 多数客户端只支持 inline 形式的 css 布局...

郁也风
今天
4
0
让哲学照亮我们的人生——读《医务工作者需要学点哲学》有感2600字

让哲学照亮我们的人生——读《医务工作者需要学点哲学》有感2600字: 作者:孙冬梅;以前读韩国前总统朴槿惠的著作《绝望锻炼了我》时,里面有一句话令我印象深刻,她说“在我最困难的时期,...

原创小博客
今天
3
0
JAVA-四元数类

public class Quaternion { private final double x0, x1, x2, x3; // 四元数构造函数 public Quaternion(double x0, double x1, double x2, double x3) { this.x0 = ......

Pulsar-V
今天
17
0
Xshell利用Xftp传输文件,使用pure-ftpd搭建ftp服务

Xftp传输文件 如果已经通过Xshell登录到服务器,此时可以使用快捷键ctrl+alt+f 打开Xftp并展示Xshell当前的目录,之后直接拖拽传输文件即可。 pure-ftpd搭建ftp服务 pure-ftpd要比vsftp简单,...

野雪球
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部