По некоторым причинам я должен использовать javax.persistence.Query для выполнения запросов к БД PostgreSQL (реальный) / H2 (тест), среди которых мне нужно получить поле datetime из БД.В Java это тип OffsetDateTime с columnDefinition="timestamp with time zone")
.
. При тестировании это не работает, потому что getSingleResult()
возвращает org.h2.api.TimestampWithTimeZone
, что не OffsetDateTime
.Но я думаю, что в PostgreSQL он должен возвращать другой тип, который является родным для PostgreSQL.
Итак, как элегантно управлять этим преобразованием?Должен ли я использовать Statement
для выполнения запросов JDBC?Это кажется слишком низким уровнем.Или лучше изменить дату и время на java.util.Date
?