引言
在开发中我们经常需要通过RestController返回Json数据,其中日期的格式如果不设置可能会是下面这种形式(JavaBean中的类型是LocalDateTime)。这不是我们想要的。在Spring boot中貌似不会有这样的问题,因为它帮我们配置好了。
"startDate" : {
"year" : 2010,
"month" : "JANUARY",
"dayOfMonth" : 1,
"dayOfWeek" : "FRIDAY",
"dayOfYear" : 1,
"monthValue" : 1,
"hour" : 2,
"minute" : 2,
"second" : 0,
"nano" : 0,
"chronology" : {
"id" : "ISO",
"calendarType" : "iso8601"
}
}
SpringMVC中手动配置,这时需要添加一个依赖。
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
<version>${com.fasterxml.jackson.version}</version>
</dependency>
于是我们发现,日期变成下面这样了。我们想要的是yyyy-MM-dd HH:mm:ss,这样比刚才接近了,但还不够。
{"value":"Hello World","now":[2017,2,3,0,8,13,645000000]}
自由设置格式
最后,我们可以在java bean中添加@JsonFormat自由的设置格式。
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
private LocalDateTime updts;
总结
经过以上两步设置,日期终于变成了想要的格式。
"updts":"2019-11-14 17:43:33"