Java 标准生成器日期比较

Java 标准生成器日期比较,java,hibernate,date,jpa,criteria,Java,Hibernate,Date,Jpa,Criteria,我想将日期与数据库中的时间戳进行比较。我目前使用 predicates.add(criteriaBuilder.between(eventRoot.get(“time”)、dBegin、dEnd); dBegin=星期四2月4日00:00:00 dEnd=周四二月四日23:59:59 事件根 private Date time; 我还尝试用以下格式格式化日期,但没有成功 DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-

我想将日期与数据库中的时间戳进行比较。我目前使用

predicates.add(criteriaBuilder.between(eventRoot.get(“time”)、dBegin、dEnd);
  • dBegin=星期四2月4日00:00:00
  • dEnd=周四二月四日23:59:59
事件根

private Date time;
我还尝试用以下格式格式化日期,但没有成功

DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
改变

predicates.add(criteriaBuilder.equal(eventRoot.<String>get("time"), curDformat));
并在我的eventRoot中将类型更改为String

我如何只检查数据库中的日期?这会提高性能还是可以在两者之间使用?

SimpleDateFromat-dateFormat=newsimpledatefromat(“yyy-MM-dd hh:MM:ss”);
SimpleDateFromat dateFormat = new SimpleDateFromat("yyyy-MM-dd hh:mm:ss");
Date dBegin = dateFormat.parse("2018-02-04 00:00:00");
Date dEnd = dateFormat.parse("2018-02-04 23:59:59");

predicates.add(criteriaBuilder.between(<Date>get("time"), dBegin, dEnd));
Date dBegin=dateFormat.parse(“2018-02-04 00:00:00”); Date dEnd=dateFormat.parse(“2018-02-04 23:59:59”); add(criteriaBuilder.between(get(“time”)、dBegin、dEnd);
你可以用between,它也可以用

SimpleDateFromat dateFormat = new SimpleDateFromat("yyyy-MM-dd hh:mm:ss");
Date dBegin = dateFormat.parse("2018-02-04 00:00:00");
Date dEnd = dateFormat.parse("2018-02-04 23:59:59");

predicates.add(criteriaBuilder.between(<Date>get("time"), dBegin, dEnd));