我使用以下代码来检索其时间列已通过的所有记录,但它没有显示任何内容。
Criteria cre = session.createCriteria(Timing.class, "timing")
.add(Restrictions.le("timing.time", getCurrentTime()));
List<Timing> timing = new ArrayList();
if (cre.list().size() > 1) {
timing = (List<Timing>) cre.list();
}
tx.commit();
System.err.println("Time is:" + timing.get(0).getTime());
<<it does not reach to this line
}
public Date getCurrentTime() {
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm");
Date date = new Date();
System.out.println("current:" + dateFormat.format(date));
return date;
}
时机
@Temporal (javax.persistence.TemporalType.TIME)
public Date getTime() {
return time;
}
最佳答案
如果您需要为空结果设置列表 NULL,请尝试此操作。
List<Timing> timing = cre.list();
if (timing!=null && timing.isEmpty())
timing = null;
我相信在当前代码的 ...size() > 1
行中它应该是 0 而不是 1,并检查 null。
关于java - 我的 hibernate 代码检索记录不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18244529/