Spring boot各种Date时间相差8小时出现的问题及其解决方法!
2023-12-14 22:35:39
数据库中存的是2019-07-22 22:00:00 但是页面展示2019-07-22 14:00:00
查看数据时区是+08:00导致的,数据库是Oracle,生成数据库没办法改时区
一:Spring boot @ResponseBody转换JSON 时 Date 时间相差8小时
一描述:当使用jackson时,返回的json和数据库会相差8个小时,(亲测);
数据库和postman相差8个小时,debug后发现是jackson得问题。
二、解决办法:
两种方法
方法一
#application.yml文件配置
spring:
jackson:
time-zone: GMT+8
方法二
这样也可以解决,在你的时间上设置时间格式化。
public class Vo {
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
private Date createTime;
}
mysql从数据库查询的时间与实际时间相差8小时
一解决办法:
1、spring.datasource.url=jdbc:mysql://10.35.105.25:3306/database?characterEncoding=utf-8&serverTimezone=GMT%2B8
数据库配置后面加上&serverTimezone=GMT%2B8
2、设置spring配置文件
#application.yml文件配置
spring:
jackson:
time-zone: GMT+8
date-format: yyyy-MM-dd HH:mm:ss
总之,第一步为设置数据库时间为东八区(北京)时间,保证debug时候从数据库查出时间一致。第二步为返回给前端的时间格式和时区设定,保证前端页面显示时间和数据库一致
文章来源:https://blog.csdn.net/p393975269/article/details/134883995
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!