用于检查列表中是否存在表中所有元素的HQL

时间:2015-03-27 10:53:36

标签: java hibernate hql

我在数据库中有一个名为Role.java的实体类和一个Role_tbl表。在我的代码中,我有一个ArrayList Role - roleList。我只想检查roleList中是否存在Role_tbl中的所有角色。

首先,我要从Role_tbl获取所有数据,将它们放入ArrayList Role - roleListfromDB的新for(Role each : roleList){ if(!roleListFromDB.contains(each)){ flag = false; break; } } 。之后使用for for循环我已经完成了检查 -

exist

但我认为它不够有效。我知道hql中有一个roleList子句。我可以用它来检查单个对象。但我可以用它来检查数据库中是否存在整个{{1}}吗?

提前致谢。

1 个答案:

答案 0 :(得分:2)

  

首先,我从Role_tbl

获取所有数据

不,不。 只需查询表中的匹配实体,如果返回的列表大小相同,它们就在那里。

如果你不需要知道哪些实体丢失/存在......你可以做一个计数(@JBNizet)