spring boot项目使用@JsonFormat无效问题

在spring项目中,时间格式是不会自动解析的,所以一般我们都会在实体类里用两个注解进行解析:
前台传参使用 : @DateTimeFormat(pattern = "yyyy--MM-dd")

后台从库中查询使用 : @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8"


平时一直这样使用,直到到有一次前台接受的还是没有解析的时间格式,我就郁闷了,进过排查发现了点问题:

问题 : @JsonFormat是jackson包的注解:

而公司项目里配置的是FastJson包:

所以问题就出来了,因为FastJson不存在@JsonFormat注解,所以使用它无效.

解决 : 在启动类里配置好想要获取的时间日期格式就好了.


   补充 : 有朋友评论补充了一个@JsonField注解,亲测有效(不过以上方法还是有效的),在这里再补充一下下:

    @JSONField(format = "yyyy-MM-dd HH:mm:ss")  //FastJson包使用注解
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") //Jackson包使用注解
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")   //格式化前台日期参数注解
    private Date createTime;
注 : 有朋友知道google的Gson包里注解的话, 欢迎评论留言!!!



猜你喜欢

转载自blog.csdn.net/luan666/article/details/80399349
今日推荐