突然有小伙伴问为什么saas项目上和监控项目上返回的时间类型不一样?
实际上两个平台实体上用的Date类型,数据库datetime类型基本一致,只是返回的格式不一样,图下(图1saas平台上返回,图2监控平台):
原因:
在于监控项目上引入了jsckson包 及配置时区的配置,返回结果是会处理时间参数,但是这样返回到前端的数据都是类似 “2021-12-20 15:48:50″格式的数据。
有的博客上建议在实体字段上加
@DateTimeFormat(pattern=“yyyy-MM-dd HH:mm:ss”)
@JsonFormat(pattern=“yyyy-MM-dd”,timezone = “GMT+8”)
这样也行,但是每个实体上配置比较麻烦,而且前端万一要改格式呢?
建议时后端不对时间格式做处理,前端自己拿到时间戳自行转换,想要什么格式就转成什么格式。前端转换也很简单,一行代码搞定,如下
moment(record.createTime).format(‘YYYY-MM-DD HH:mm’);
如有问题 欢迎指正!!!