我正在尝试执行以下操作(cb = CriteriaBuilder):
cb.between(
cb.currentTimestamp(),
kampanjeArtikkelPriser.get(KampanjeArtikkelPris_.overstyrtSalgsprisPeriodeFra),
kampanjeArtikkelPriser.get(KampanjeArtikkelPris_.overstyrtSalgsprisPeriodeTil)),但是,我得到以下语法错误:
是否有可能将表达式转换为表达式?我似乎有点卡住了,因为我还没有找到办法来做到这一点,就我所能看到的,我也没有其他的选择。更改实体java类型不是一个选项,因为这是一个有点大的系统,我不知道这会产生什么样的影响。
发布于 2014-03-28 12:39:20
这似乎是一个很好的选择,取而代之的做法是:
Calendar now = Calendar.getInstance();
cb.and(
cb.lessThanOrEqualTo(kampanjeArtikkelPriser.get(KampanjeArtikkelPris_.overstyrtSalgsprisPeriodeFra), now),
cb.greaterThanOrEqualTo(kampanjeArtikkelPriser.get(KampanjeArtikkelPris_.overstyrtSalgsprisPeriodeTil), now)
)https://stackoverflow.com/questions/22712863
复制相似问题