Недавно я пытался реализовать микро-сервис с использованием Spring-Boot 2.
Теперь, когда я пытаюсь вернуть объект, который содержит java.time.LocalDateTime
из моей службы REST, LocalDateTime сериализуется как массивцелых чисел.Примерно так:
{
"id": "5bf1425f9f8de267f04b22ad",
"description": "aaaaaarrrgggghhhhh",
"timestamp": [
2018,
11,
18,
11,
43,
43,
889000000
],
"time": 2.25,
...
}
Я пытался настроить ObjectMapper
через настройки в application.yml
spring:
jackson:
serialization:
write-dates-as-timestamps: false
, но не работает.Я также пытался настроить новый ObjectMapper с помощью класса Spring Configuration, например:
@Configuration
public class JacksonConfig {
@Bean
@Primary
public ObjectMapper objectMapper(Jackson2ObjectMapperBuilder builder) {
final ObjectMapper objectMapper = builder.build();
objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
return objectMapper;
}
}
Моя конфигурация загружается (отладчик останавливается на точке останова) - просто он ничего не делает.
Я попытался добавить jackson
зависимостей вручную (также для модуля jsr310) в мой pom.xml - тоже безуспешно.
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
</dependency>
По какой-то причине похоже, что Spring Boot игнорирует мои попытки чего-либос ObjectMapper, и он продолжает возвращать один и тот же результат.
Установка уровня журнала DEBUG для com.fasterxml
в application.yml
также не приводит к выводу:
logging:
level:
com.fasterxml: DEBUG
Я использую Spring Boot2.1.0-РЕЛИЗ с Джексоном 2.9.7.
Основной файл pom был сгенерирован из https://start.spring.io Мой проект компилируется и работает на Java 8 JVM.