springboot项目@JsonFormat无效
需求
后端存储 createTime时,数据库使用的是dateTime类型,后端使用了LocalDateTime 来接受、处理相关业务逻辑。
但是UI的设计稿中,前端时间只需要年月日,不需要后面的具体时分秒,在于前端同事讨论之后,前端妹子表示不能每次这样的情况都让她单独处理截取这样的数据。
因此想在传输给前端时统一处理该问题。
问题
想着以前使用@JsonFormat
即可在后端传输数据,统一转化json格式时进行格式化,但是发现无效。
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime createTime;
查阅了各种资料之后,最终确定是因为项目引用包的问题。
项目中使用的是fastjson
,但是JsonFormat
使用的包却是jackson
import com.fasterxml.jackson.annotation.JsonFormat;
解决
fastjson
也有类似作用的注解
@JSONField(format = "yyyy-MM-dd HH:mm:ss") //FastJson包使用注解
private LocalDateTime createTime;
使用之后问题搞定!
2019.4.10补充
@JsonIgnore
失效同样的问题,使用fastJson对应的@JSONField(serialize = false)
即可