私は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);
もちろん、aDate
とaを直接比較することはできないため、これは機能しませんTime
。これがSQLクエリの場合、DBMS固有の日付関数をいくつか使用してそれらを比較しますが、JPAで日付と時刻をどのように比較しますか?