在我的应用程序中,我需要按他的创建日期搜索订单。在我的实体中,creationDate 字段的类型是 java.time.Instant。
在我的类ManualOrderSpecification 中,我需要检查creation_date。
我想比较没有小时数或相同小时(例如 0 小时)的创建日期。
我的代码:
if (searchBean.getCreatedDate() != null) {
Instant createdInstantFromForm = ZonedDateTime.of(searchBean.getCreatedDate(), LocalTime.of(0, 0, 0, 0), ZoneId.systemDefault()).toInstant();
p.getExpressions().add(criteriaBuilder.equal(root.get(ManualOrder_.createdDate), createdInstantFromForm ));
}
当然它不起作用,因为我比较相同的日期但不同的时间,0小时到另一个小时。我如何强制与本地日期进行比较,或者我可以强制将 root.get(ManualOrder_.createdDate) 属性设置为 0 小时?
非常感谢