【Spring】SpringMVC前后端时间传递相差8小时问题
因为我做的是全栈开发,前后端都是自己搞,所以对前端传递参数,后段接受参数都能有所把控。
今天在开发过程中发现,前端传过来的时间是2022-03-17(通过浏览器查看),而后端Controller中对象接收到的却是2022-03-17 08:00:00
第一时间想到,我们所在的是东八区,可能是这个导致的。经过了解Spring默认的jackson框架转换,而该框架时区默认GMT(相较于中国少8小时)
(https://blog.csdn.net/weixin_35745604/article/details/114828021)
方法1:
使用时间函数,取到当天的0点0分0秒。
方法2:
给具体某个需要转换的参数标记注解
@JsonFormat(timezone = "GMT+8") private Date startStart;
方法3:
通过配置文件的方式配置全局的timezone
#application.properties
spring.jackson.time-zone=GMT+8