jackson遇上LocalDateTime之后的那些破事
写项目的时候发现 Date
里边好多方法不在被推荐使用了,有个 LocalDateTime
用起来还蛮方便的,但是前后端传值的时候老出问题,如下:
"createTime": {
"nano": 0,
"monthValue": 3,
"hour": 17,
"minute": 33,
"second": 10,
"dayOfMonth": 17,
"dayOfWeek": "THURSDAY",
"dayOfYear": 76,
"year": 2022,
"month": "MARCH",
"chronology": {
"id": "ISO",
"calendarType": "iso8601"
}
},
"scoreTime": {
"nano": 0,
"monthValue": 3,
"hour": 17,
"minute": 57,
"second": 52,
"dayOfMonth": 17,
"dayOfWeek": "THURSDAY",
"dayOfYear": 76,
"year": 2022,
"month": "MARCH",
"chronology": {
"id": "ISO",
"calendarType": "iso8601"
}
},
因为使用的框架在返回前端数据的时候做了处理,将数据从对象转成了json使用的还是 jackson
就出了问题,其实解决方法也有很多种。
第一直接在实体上加注解
/**
* 创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonSerialize(using = LocalDateTimeSerializer.class)
private LocalDateTime createTime;
/**
* 评分时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonSerialize(using = LocalDateTimeSerializer.class)
private LocalDateTime scoreTime;
第二种Maven依赖
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.8</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-parameter-names</artifactId>
<version>2.8.8</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jdk8</artifactId>
<version>2.8.8</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
<version>2.8.8</version>
</dependency>
这个我没测试
标题:jackson遇上LocalDateTime之后的那些破事
作者:llilei
地址:http://solo.llilei.work/articles/2022/03/21/1647857066019.html