gpt4 book ai didi

Java Criteria API 和 java.util.Date 列上的操作

转载 作者:太空宇宙 更新时间:2023-11-04 13:31:02 25 4
gpt4 key购买 nike

有没有办法将 java.util.Date 列转换为 unix 时间并对其执行操作。

我已经尝试过

CriteriaBuilder cb = entityManager.getCriteriaBuilder();
Root<Trip> table = cq.from(Trip.class);
table.get(Trip_.endTime).as(Long.class)

但它似乎不起作用(endTime 的类型为 java.util.Date(数据库中的 DATETIME))

或者

有没有办法获取两个 java.util.Date 列之间的秒数

谢谢

最佳答案

我设法通过调用 native 函数 DATEDIFF 解决了这个问题

Expression<Integer> diff = cb.function("DATEDIFF", Integer.class, cb.literal("SECOND"), table.get(Trip_.startTime), table.get(Trip_.endTime));
Expression<Integer> time = cb.sum(diff);

关于Java Criteria API 和 java.util.Date 列上的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32208230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com