您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

使用动态where子句休眠

使用动态where子句休眠

通过使用条件,这应该不成问题。

CriteriaBuilder queryBuilder = em.getCriteriaBuilder();
CriteriaQuery query = queryBuilder.createQuery();
Root<Demo> demo = query.from(Demo.class);

Iterator it = map.entrySet().iterator();
Map.Entry wherePair = (Map.Entry)it.next();  // This is retrieved for creating the where clause
query.where(wherePair.getKey() + "=" + wherePair.getValue());

while (it.hasNext()) {
   Map.Entry pairs = (Map.Entry)it.next();
   query.and(" " + pairs.getKey() + "=" + pairs.getValue());
}

我不能保证它会编译,但这就是想法。

其他 2022/1/1 18:13:32 有851人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶