遇到一个问题,springboot升级成2.0后,从数据库查出来的日期,用Date接收,最后直接返回给前端,在谷歌浏览器中能正常显示成yyyy-MM-dd HH:mm:ss格式。但是在IE浏览器中日期显示的是“乱码”,因为springboot1.x版本的默认将Date字段返回的是时间戳 ,而谷歌、IE都会自动将时间戳转换成yyyy-MM-dd HH:mm:ss;在springboot2.0后,spring会将Date字段自动给转成UTC字符串了(在没有配置的情况下),所以date需要转换成时间戳还是yyyy-MM-dd HH:mm:ss,需要在spring增加如下配置,我选的是返回时间戳配置,成功解决了问题。
配置返回时间戳
1
2
3
4
|
spring jackson: serialization: write-dates-as-timestamps: true |
全局配置返回字符串
1
2
3
4
|
spring: jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+ 8 |
有了第二个配置,就不需要在每个实体类的日期属性上加@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")这个注解了
1
2
3
4
5
6
7
8
|
# 指定执行环境 spring: profiles: # active: @env @ active: dev jackson: serialization: WRITE_DATES_AS_TIMESTAMPS: true |
到此这篇关于springboot 配置date字段返回时间戳的问题的文章就介绍到这了,更多相关springboot 配置返回时间戳内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://www.cnblogs.com/panchanggui/p/15057022.html