一尘不染

HQL按日期进行查询搜索(Java + NetBeans)

hibernate

大家好,我有以下问题。我的MySQL数据库中有一个保留表,日期列定义为DATETIME。我需要使用hibernate进行查询以找到一天中的所有储备,无论是小时还是同一年的月份和日期,而我正在这样做

public List<Reserve> bringAllResByDate(Date date){

em = emf.createEntityManager();
Query q = em.createQuery("SELECT r FROM Reserve r WHERE r.date=:date ");
q.setParameter("date", date);

我真的不知道如何进行比较,并只带给我指定日期的信息,没有任何帮助吗?


阅读 378

收藏
2020-06-20

共1个答案

一尘不染

我希望有一种与日期无关的将日期时间转换为日期的方法。通常,这就是我处理您的情况的方式。

Calendar from = Calendar.getInstance();
Calendar to = Calendar.getInstance();

from.add(Calendar.DATE, -1);
to.add(Calendar.DATE, 1);

Query q = em.createQuery("SELECT r FROM Reserve r WHERE r.date > :dateFrom AND r.date < :dateTo ");
q.setParameter("dateFrom", from.getTimeInMillis());
q.setParameter("dateTo", to.getTimeInMillis());
2020-06-20