1、首先要确保Jackson和Mybatis正确地整合进项目了
2、添加额外的依赖
<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-typehandlers-jsr310</artifactId> <version>1.0.1</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.datatype</groupId> <artifactId>jackson-datatype-jsr310</artifactId> <version>2.9.2</version> </dependency>
3、至此,Po类中的域,可以用LocalDate来映射数据库中的date类型字段了,可以用LocalTime来映射数据库中的time类型字段了,可以用LocalDateTime字段来映射数据库中的datetime类型字段了
4、为LocalDate/LocalTime/LocalDateTime类型的私用域添加@JsonFormat主键,如下所示
public class TimeEntity { private Integer id; @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate date_field; @JsonFormat(pattern = "HH:mm:ss") private LocalTime time_field; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime datetime_field; // Getters and setters ignore. }
至此,这些私有域会被转化成一个类似 'time_field' : '12:01:00'这样格式,而不是'time_field' : {.....}这样的格式