ObjectMapper и timezone: настройка обработки дат без указания зоны — 6 июня 2026 г. в 06:23:04.271
ObjectMapper и timezone: настройка обработки дат без указания зоны При десериализации дат в формате "2024-01-15T10:00:00" без явной таймзоны Jackson по умолчанию использует UTC. Это может привести к неожиданным результатам при работе с ZonedDateTime или Instant, когда приложение работает в другой временной зоне. 🔵 Решение ▪️ Настройка ObjectMapper через Jackson2ObjectMapperBuilderCustomizer: @Bean public Jackson2ObjectMapperBuilderCustomizer jsonCustomizer() { return builder -> builder .timeZone(TimeZone.getDefault()) .featuresToDisable( SerializationFeature.WRITE_DATES_AS_TIMESTAMPS ); } Jackson будет использовать системную таймзону приложения вместо UTC. Актуально для микросервисной архитектуры при обмене timestamp'ами между сервисами. ▪️ Для явного указания таймзоны: java.timeZone(TimeZone.getTimeZone("Europe/Moscow"))

