use*_*339 0 hibernate detachedcriteria hibernate-criteria
我有
Class A{
List <B> bList
}
Class B {
String name;
}
Run Code Online (Sandbox Code Playgroud)
现在我想用Hibrnate标准API编写查询,这样我只得到一个带有过滤的bList属性的pojo,只有B pojo的
where "b.name" == 'abc'
Run Code Online (Sandbox Code Playgroud)
这是一件非常危险的事情,虽然它得到了Hibernate的支持,但它不是由JPA支持的,因为它加载的实体并不能反映数据库中存储内容的实际情况.如果您碰巧修改了B列表,Hibernate可能会删除所有与A无关但尚未被查询加载的B.
也就是说,这是一个带有获取模式的简单内连接:
Criteria c = session.createCriteria(A.class, "a");
c.createAlias("a.b", "b");
c.add(Restrictions.eq("b.name", "abc");
c.setFetchMode("a.b", FetchMode.JOIN);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1632 次 |
| 最近记录: |