Преобразование даты в OffsetDateTime с форматированиемJAVA

Программисты JAVA общаются здесь
Anonymous
Преобразование даты в OffsetDateTime с форматированием

Сообщение Anonymous »

В моем проекте есть объект под названием «Пример» с полем «Дата». Поскольку я работаю с использованием Swagger, я создал соответствующий DTO, используя файл .yaml. Определение «даты» в .yaml означает, что мой DTO будет иметь поле OffsetDateTime.
Теперь, когда я извлекаю из базы данных «Пример», я сопоставляю его поле даты с полем Сместите поле, выполнив следующие действия:

Код: Выделить всё

OffsetDateTime offsetDate = exampleDate.toInstant().atZone(ZoneId.systemDefault()).toOffsetDateTime();
После этой строки у меня есть:

Код: Выделить всё

2024-07-01T15:03:28+02:00
Дело в том, что интерфейсная часть хочет, чтобы я вернул это OffsetDateTime, отформатированное другим способом.
У меня есть просьба — отформатировать их. вот так:

Код: Выделить всё

2024-07-01 13:03:28
Но у меня с этим много проблем, поскольку использование DateTimeFormatter преобразует его в String, а повторное преобразование в OffsetDateTime дает мне ошибку, поскольку у меня больше нет смещения (что-то вроде этого, очевидно, требуется OFFSETDateTime).
Помощь? Я выполнял всевозможные цепочки команд (преобразование даты в смещение, затем смещение в строку для форматирования, затем строку в смещение), но я никуда не собираюсь и уверен, что есть лучшие способы справиться с этим.< /п>

Подробнее здесь: https://stackoverflow.com/questions/786 ... formatting

Вернуться в «JAVA»