使用@JsonFormat的一个坑及解决
spring boot项目 ,mysql数据库的datetime数据类型无法使用@JsonFormat解析 ,使@JsonFormat注解失效 。
原因不明 ,解决方案未明-待。。
有一个解决方案:
@JsonFormat注解在字段解析的时候失效了 ,但是放在application.yml配置文件中可以生效。具体原因不明 ,猜测底层覆盖掉format方法 或者Jackson 默认走配置文件的方式?
解决如下
1 2 3 4 |
spring: jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+ 8 |
同级 spring.jackso.date-formact
JsonFormat的时间格式踩坑
使用JsonFormat注解来处理时间格式时,一定要注意规范写日期格式,否则会出现奇奇怪怪的时间转换bug
正确格式
1 2 |
@JsonFormat (partten= "yyyy-MM-dd" ,timezone= "GMT+8" ) private Date startDate; |
错误格式:输出的时间会变成每月1号
1 2 |
@JsonFormat (partten= "yyyy-mm-dd" ,timezone= "GMT+8" ) private Date startDate; |
正确格式
1 2 |
@JsonFormat (partten= "yyyy-MM-dd HH:mm:ss" ,timezone= "GMT+8" ) private Date startDate; |
错误格式:输出时间会早10小时
1 2 |
@JsonFormat (partten= "yyyy-MM-dd hh:mm:ss" ,timezone= "GMT+8" ) private Date startDate; |
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
原文链接:https://blog.csdn.net/qq_42012018/article/details/89460801
查看更多关于使用@JsonFormat的一个坑及解决的详细内容...