【问题标题】:Hibernate Restrictions - how can I query with multiple values?Hibernate Restrictions - 如何查询多个值?
【发布时间】:2014-11-12 02:28:34
【问题描述】:

我是 Hibernate Restrictions 的新手,需要一些帮助:

我有一个场景,我需要找到“标识符”为“HB001”或“HB002”、“HB003”和“HB004”的所有记录。也就是说,它应该返回4行,每行都有“标识符”为“HB00*”。

//here is the code
Criteria criteria = hibernateSession.createCriteria(ENTITY_CLASS); 

List<String> ids = getIds(); //ids contains "HB001", "HB002", "HB003", "HB004" and I am sure this step has no issue. 
criteria.add(Restrictions.eq("identifier", ids));
...

看起来criteria.add(Restrictions.eq("identifier", ids)) 不正确,查询返回空值。

有人可以帮忙吗?

【问题讨论】:

    标签: java hibernate hibernate-criteria restrictions


    【解决方案1】:

    您需要使用criteria.add(Restrictions.in("identifier", ids));,并且您的ids 应该是一个类似ArrayList 的集合。

    刚刚注意到你的ids已经是一个List,你可以直接使用Restrictions.in。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-28
      • 1970-01-01
      • 1970-01-01
      • 2021-05-15
      • 2017-10-27
      • 2010-11-02
      • 2012-12-01
      • 2011-08-11
      相关资源
      最近更新 更多