经过查阅相关资料发现在spring转json的默认实现jackson中会根据时区去转换时间,而jackson的默认时区跟国内应该是相差8小时,所以再时间换算上相差了8小时
解决方案一,在实体类的时间字段上加上注解
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date regisDate; //注册时间
DateTimeFormat
可加可不加,不加的话前台处理格式即可
解决方案二,application.properties配置文件增加以下配置
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8
date-format指定date输出格式为yyyy-MM-dd HH:mm:ss
time-zone指定时区,解决8小时的时间差问题
网友评论