Изменение часового пояса даты при использовании весенней загрузки по умолчанию сопоставление Джексона - PullRequest
0 голосов
/ 24 августа 2018

У меня есть служба весенней загрузки, которая вызывает другую службу xyz и получает дату в формате yyyy-MM-ddXXX от json.Но часовой пояс даты меняется в моем ответе службы.Предположим, я получаю дату в JSON от службы xyz как «дата»: «2018-08-27-07: 00», но мой ответ службы возвращает дату: «2018-08-27-04: 00».Смещение меняется.Поле даты в моем POJO есть.Я хочу использовать то же смещение, которое я получаю от бэкэнда, и это может быть любое смещение.

 @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-ddXXX")
   private Calendar date;

1 Ответ

0 голосов
/ 24 августа 2018

Проблема в том, что CalendarDate) используют неявные преобразования времени, чтобы приспособить его к вашему часовому поясу.И почти всегда это то, что не ожидалось.

Чтобы избежать этого, используйте java.time классы (такие как OffsetDateTime или ZonedDateTime, или даже LocalDateTime, если вам не нужно работать с часовыми поясами).

И небольшой оффтоп совет: попробуйте использовать формат времени, выровненный по стандарту ISO8601 (например, 2018-08-24T22:30:00)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...