springboot 自帶了jackson來處理時間,但不支持jdk8 LocalDate、LocalDateTime的轉換。
對於Calendar、Date二種日期,轉換方式有二種:
一、統一application.properties屬性配置文件中加入
spring.jackson.dateFormat=yyyy-MM-dd HH:mm:ss
如果你使用了joda第三包下的時間類型,
spring.jackson.jodaDateTimeFormat=yyyy-MM-dd HH:mm:ss
此方法為全局格式,沒辦法處理差異化。
二、使用jackson的時間注解@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
需要在每個日期類型上都添加,增加代碼量,但更靈活性。
以上二方法不能對jdk8 LocalDate、LocalDateTime起作用,還需要添加jackson轉換包,在pom.xml添加
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
<version>2.9.0</version>
</dependency>
才能生效。