[英]Hibernate criteria filter inner collection
我有以下课程/表:
和以下代码:
Criteria criteria = session.createCriteria("User");
criteria.list();
返回一个User
列表,其中包含与之关联的Work
对象列表(通过id = user_id)。
如何修改此查询以获取相同的User
列表,但有以下限制: Work
List不应包括名称为'fck'的Work
?
这是可能的,但不是明智的做法,因为加载的用户不会反映数据库的实际状态:他们的工作清单应包含所有工作,而不仅仅是其中一些工作。 修改它们可能导致数据库中不必要的删除。
我宁愿与他们相关的用户一起加载您感兴趣的作品:
Criteria c = session.createCriteria(Work.class, "work");
c.createAlias("work.user", "user");
c.setFetchMode("work.user", FetchMode.JOIN);
c.add(Restrictions.ne("work.name", "fck"));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.