刚入职用springboot+mybatis+mysql写点学习案例
碰到一个问题,从数据库取出来的时间在控制器里打印都是正常的
(你要是少两天,那可能是连接数据库的url没纠正时区少一天,jackson再少一天。。。emm太惨了,写错几行代码两天就没了)
?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8
//连接mysql数据库关于编码、时区等等事项配置
通过浏览器就会凭空少一天
后来才知道是因为jackson配置日期格式反序列化导致的问题
上面贴的是mysql的问题,没问题可以忽略;下面就是解决jackson少一天的办法了:
将如下类容添加到springboot配置文件里面就可以了
properties版:
#jackson日期少一天问题
spring.jackson.date-format=yyyy-MM-dd
spring.jackson.default-property-inclusion=always
spring.jackson.time-zone=GMT+8
ymal版:
spring:
jackson:
default-property-inclusion: ALWAYS
time-zone: GMT+8
date-format: yyyy-MM-dd
然后问题解决,前端页面也可以正常显示日期了