【发布时间】:2019-02-11 12:40:12
【问题描述】:
给定一个具有两个 LocalDateTime 类型的日期字段的实体:
class MyEntity {
private LocalDateTime start;
private LocalDateTime lastUpdate;
}
我想用条件 api 编写一个查询,按这两个日期之间的时间对结果集进行排序。
/* ... */
Root<MyEntity> root = query.from(MyEntity.class);
Order order = ???
root.orderBy(cb.desc(order));
/* ... */
到目前为止我的想法:
-
CriteriaBuilder#diff希望它的参数来自Number,而 LocalDateTime 不这样做 -
CriteriaBuilder#treat也许以某种方式将其视为时间戳?毕竟它作为时间戳存储在数据库中
ps:
- 使用 EclipseLink 2.7.3
- 寻找不与特定数据库绑定的解决方案
【问题讨论】:
标签: jpa eclipselink criteria-api