Hibernate 6 ändert implizit Zeitzonen von Lesedaten für den Moment implizitJava

Java-Forum
Anonymous
 Hibernate 6 ändert implizit Zeitzonen von Lesedaten für den Moment implizit

Post by Anonymous »

Ich habe ein Problem mit den Lesen von Daten von Hibernate aus PostgreSQL db < /p>
Ich migriere ein Legacy -Projekt in Spring Boot 3 und Hibernate 6.5.3

Code: Select all

@Data
@Entity
@SuperBuilder(toBuilder = true)
@AllArgsConstructor
@NoArgsConstructor
public class TestEnity {
@NonNull
private UUID id;
@NonNull
private Instant createDate;
}
< /code>
Datensatz von entityManager (in meinem TimeZone jetzt 12 Uhr, UTC+02: 00) mit Eigenschaft Spring.jpa.properties.hiberNate.type.Preferred_instant_jdbc_type = Timestamp: < /p>
id                                      |   create_date
----------------------------------------------------------------------
3ceca36e-710f-4ea3-223b-1118b0796c7f    |   2025-04-10 12:20:30.510548
3ceca36e-710f-4ea3-223b-2228b0796c7f    |   2025-04-09 12:20:30.510548
3ceca36e-710f-4ea3-223b-3338b0796c7f    |   2025-04-08 12:20:30.510548
< /code>
und ich verwende QueryDSL für GET -Datensätze: < /p>
SQLQueryFactory sqlQueryFactory = new SQLQueryFactory(GenaratorQsqlUtils.createConfiguration(), dataSource);

BooleanBuilder booleanBuilder = new BooleanBuilder();
booleanBuilder.and(getDateFrom(instantFrom));
booleanBuilder.and(getDateTo(instantTo));

long count = sqlQueryFactory.select()
.from(testE)
.where(booleanBuilder) //createDate >= 2025-04-09T12:19:58Z && createDate 
Vielleicht ist mein Ansatz mit dem Parameter im Allgemeinen falsch und ich muss etwas anderes verwenden? Oder wie man auch hibernate so konfigurieren, dass es keine implizite Umwandlung von Daten aus der Datenbank in das UTC -Format durchführt?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post