spring boot 默认使用的jackson,并对默认做了配置。
处理方法:
1.全局性的修改
application.yml
中修改默认的配置
修改字符串的格式spring.jackson.date-formate = yyyy-MM-dd HH:mm:ss
这样修改后会有8小时的时差,还需要如下的配置
修改时区spring.jackson.time-zone = GMT+8
2.局部性的修改,会覆盖全局配置该属性的作用
在Date
的属性上添加注解来实现@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date birthday;
如果上述有问题,则修改数据库连接配置
url: jdbc:mysql://localhost:3306/station?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai
或者
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/station?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai
username: root
password: 123466
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8