springboot 返回json格式数据时间格式配置方式
程序员文章站
2022-06-22 17:00:12
目录返回json格式数据时间格式配置返回json日期格式问题返回json格式数据时间格式配置数据库里面查出来的时间是时间错格式,前段需要处理才能展示相应的格式,自己一个个转的话太麻烦,所以可以在apl...
返回json格式数据时间格式配置
数据库里面查出来的时间是时间错格式,前段需要处理才能展示相应的格式,自己一个个转的话太麻烦,所以可以在apllication.property加入下面配置就可以
#时间戳统一转换 spring.jackson.date-format=yyyy-mm-dd hh:mm:ss spring.jackson.time-zone=gmt+8
其中time-zone是时区偏移设置,如果不指定的话时间和北京时间会差八个小时。
返回json日期格式问题
springboot中默认返回的日期格式类似于这样:
"birth": 1537407384500
或者是这样:
"createtime": "2018-09-18t10:54:06.000+0000"
以上都不满足实际显示需要
修改方式(仅限于使用默认的jackson解析包的情况):
application.properties/yml文件中修改默认的format格式:
spring.jackson.date-format=yyyy-mm-dd spring.jackson.time-zone=gmt+8 spring.jackson.serialization.write-dates-as-timestamps=false
其中上面的spring.jackson.date-format的值自己可以根据实际需要修改。
那么修改后会出现一个问题:我如果想返回不同格式的怎么办?例如yyyy-mm-dd或者yyyy年mm月dd日 hh时mm分ss秒
那么可以在上面的配置文件中设定一个默认的格式,然后如果需要其他格式 只需要在相关的实体类中的字段里面加上如下注解:
@jsonformat(pattern="yyyy年mm月dd日 hh时mm分ss秒",timezone = "gmt+8") private date registerdate;
此时返回格式会优先使用注解设置的格式。通过以上方式可以做到灵活多变。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。