Весна загрузка (двенадцать): LocalDateTime форматирование

После того, как Java 8, класс даты с использованием раствора java.time пакета, соответствующим LocalDateTime, LOCALDATE, МестноеВремя класс. (Ссылочный Java8 новые особенности)

 

В весеннем загрузке (проверить версию: 2.1.5.RELEASE), сериализованная формат дата класса не может владеть, вам нужно определить свой собственный формат. Есть два способа достижения.

 

1. Режим аннотаций

Формат используется @JsonFormat, @DateTimeFormat из определенной последовательности (фасоль поворота JSON) и анти последовательности (JSON своей очереди, фасоли), такие, как

@JsonFormat (рисунок = "гггг-ММ-дд чч: мм: сс") 
@DateTimeFormat (рисунок = "YYYY-MM-DD HH: MM: SS")
частный LocalDateTime DateTime;

 

 

2. равномерной конфигурации

Конфигурация определить класс объектов ObjectMapper настроить указанную дату и тип последовательности, соответствующей десериализации объектов, таких как

@Configuration 
общественного класса LocalDateTimeFormatConfig { частных статический финал Строка DEFAULT_DATE_TIME_PATTERN = «ГГГГ-ММ-ДД ЧЧ: мм: сс»; частный статический финал Строка DEFAULT_DATE_PATTERN = «ГГГГ-ММ-дд»; частные статический окончательная Строка DEFAULT_TIME_PATTERN = «HH: мм: сс»; @Bean @Primary общественного ObjectMapper ObjectMapper () { ObjectMapper ObjectMapper = новый ObjectMapper (); JavaTimeModule javaTimeModule = новый JavaTimeModule (); javaTimeModule.addSerializer (LocalDateTime.class,









новый LocalDateTimeSerializer (DateTimeFormatter.ofPattern (DEFAULT_DATE_TIME_PATTERN)));
javaTimeModule.addSerializer (LocalDate.class, новый LocalDateSerializer (DateTimeFormatter.ofPattern (DEFAULT_DATE_PATTERN)));
javaTimeModule.addSerializer (LocalTime.class, новый LocalTimeSerializer (DateTimeFormatter.ofPattern (DEFAULT_TIME_PATTERN)));
javaTimeModule.addDeserializer (LocalDateTime.class, новый LocalDateTimeDeserializer (DateTimeFormatter.ofPattern (DEFAULT_DATE_TIME_PATTERN)));
javaTimeModule.addDeserializer (LocalDate.class, новый LocalDateDeserializer (DateTimeFormatter.ofPattern (DEFAULT_DATE_PATTERN)));
javaTimeModule.addDeserializer (LocalTime.class,новый LocalTimeDeserializer (DateTimeFormatter.ofPattern (DEFAULT_TIME_PATTERN)));
objectMapper.registerModule (javaTimeModule); вернуться ObjectMapper; } }



 

3. Резюме

Примечания пути должны быть отмечены на каждую собственности, если дата является более атрибутом класса более сложным, пользовательский класс конфигурации может быть унифицирован способом форматирования даты. Случай, когда присутствуют оба, превалировать отмечает, что ноты будут перезаписаны единую конфигурацию.

 


 

Я приветствую внимание на микро-канал общественного номер, своевременный доступ к последней акции

рекомендация

отwww.cnblogs.com/spec-dog/p/11865059.html