gpt4 book ai didi

java - JPA 和 Hibernate : compare only time portions of timestamps

转载 作者:行者123 更新时间:2023-11-30 05:51:07 24 4
gpt4 key购买 nike

我通过 JPA 使用 Hibernate,我需要按记录的 Date 属性的时间部分过滤记录。

public class Foo {
Date getDateTime() {
// Returns a date and time value.
}
}

Time startTime = ...;
Time endTime = ...;

TypedQuery<Foo> query = entityManager.createQuery("SELECT foo FROM Foo foo where :startTime <= foo.dateTime AND foo.dateTime <= :endTime", Foo.class);
query.setParameter("startTime", startTime);
query.setParameter("endTime ", endTime);

当然这是行不通的,因为您不能直接比较DateTime。如果这是一个 SQL 查询,那么我会使用一些特定于 DBMS 的日期函数来比较它们,但是如何在 JPA 中比较日期和时间?

最佳答案

如果您使用的是 JPA,您可以使用@Temporal(TemporalType.TIME)它将仅返回 TIMESTAMP 的时间部分。喜欢:@Temporal(TemporalType.TIME)日期 getDateTime()

关于java - JPA 和 Hibernate : compare only time portions of timestamps,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13181624/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com