问题解析:Spring转Json时会根据时区去转换时间,而Json的默认时区与中国的东八区时区相差8个小时的时间差。
解决方法一:在entity的时间字段上加上注解标签;
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date createTime; //创建时间
注解标签中的
@JsonFormat是指定输出的时间格式,并在原时间的基础上加上8个小时;
@DateTimeFormat是指前端传的时间值自动转换,前端传入的可以是Date也可以是String,但要与指定的格式保持一致;
解决方法二:在application.properties文件中指定时间的转换格式:
/*输出时间的指定格式,并指定时区*/
spring.jackson.time-zone=GMT+8
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss