spring-boot中spring.jackson.date-format失效及解决办法
时间: 2024-02-01 14:13:16 浏览: 221
springboot json时间格式化处理的方法
5星 · 资源好评率100%
在 Spring Boot 应用中,可以使用 `spring.jackson.date-format` 属性来指定日期格式,但有时候会发现这个属性不起作用,原因是默认情况下 Spring Boot 使用了 Jackson 的 `ObjectMapper` 来序列化和反序列化对象,而这个 `ObjectMapper` 是在 `JacksonAutoConfiguration` 自动配置类中创建的,如果你自己手动创建了一个 `ObjectMapper` 并使用了它来序列化和反序列化对象,那么 `spring.jackson.date-format` 属性就不起作用了。
解决办法有两种:
1. 在 `application.properties` 或 `application.yml` 中添加以下配置:
```
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
```
这样会覆盖默认的 `ObjectMapper` 的日期格式配置。
2. 手动创建一个 `ObjectMapper`,并使用它来序列化和反序列化对象,例如:
```java
@Configuration
public class JacksonConfig {
@Bean
public ObjectMapper objectMapper() {
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"));
return objectMapper;
}
}
```
这样就可以通过手动创建的 `ObjectMapper` 来控制日期格式了。
阅读全文