Замена joda time на time api в спящем объекте - PullRequest
1 голос
/ 07 февраля 2020

В настоящее время я выполняю обновление с jodatime до javatime api в проекте. В проекте используется hibernate версии 4.3.1 и jadira.usertype для сопоставления между org.joda.time.DateTime и java. sql .Timestamp (http://jadira.sourceforge.net/usertype.core-hibernate36/apidocs/org/jadira/usertype/dateandtime/joda/PersistentDateTime.html).

Выдержка из одного из объектов:

@Column(name = "created_at")
private DateTime createdAt;

Когда системное время сервера - «Пт 7 февраля 10:09:02 CET 2020», это сохраняется в столбце: « 2020-02-07 09: 09: 02.431000 "

В руководстве по преобразованию времени joda (https://blog.joda.org/2014/11/converting-from-joda-time-to-javatime.html) указано, что org.joda.DateTime является тем же понятием, что и java .time.ZonedDateTime. Я имею в виду просто заменить DateTime на ZonedDateTime, но есть две вещи, которые вызывают беспокойство и проблемы: новые типы java .time не поддерживаются в спящем варианте, а тип данных столбца «create_at» равен «timestamp без времени». зона». Обновление hibernate пока не вариант Вы не уверены, какой тип java .time использовать вместо org.joda.DateTime при конвертации из / в метку времени - любые рекомендации о том, как go узнать об этом, приветствуются!

...