两个参数都是针对日期格式化做处理
1.入参格式化@DateTimeFormat
传入参数是 String 类型,接收的参数Date 类型,类型无法转换。
使用 Spring 的 @DateTimeFormat 注解格式化参数
传入参数要是日期格式的String 类型
例如:"2021-10-01"
pattern = "yyyy-MM-dd" 只是转换成对应的格式
如果还是无法转换,可能缺少依赖
<dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId></dependency>
2.出参格式化@JsonFormat
调用接口的返回结果为:"date": "2021-10-01T18:25:45.296+0000"
格式化日期使用
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
pattern 参数格式化
timezone jackson序列化时间时是按照国际标准时间GMT进行格式化的, 国内默认时区使用的是CST时区,两者相差8小时