【发布时间】:2015-08-14 16:29:37
【问题描述】:
Hibernate 文档提供了一些关于 Hibernate filters 的信息,并在该部分讨论了 HQL 和负载获取。但它从未明确提及将它们与criteria queries 结合使用。预计以下内容会起作用吗?假设 Hibernate 4.3。
实体定义
@Entity
@FilterDef(name="myFilter", parameters=@ParamDef( name="myParam", type="integer" ) )
@Filters( {
@Filter(name="myFilter", condition="myField = :myParam")
} )
// assume MyType contains some mapped field named "myField"
public class MyType { ... }
查询代码
sess.enableFilter("myFilter").setParameter("myParam", 1);
Criteria crit = sess.createCriteria(MyType.class);
//set some other restrictions on crit
List items = crit.list();
项目是否已应用myFilter?
【问题讨论】:
-
对不起,不是要添加“JPA”标签。我只是从“相关标签”中单击它。
-
你试过了吗?结果如何?
-
我试过了,还是不行。我们的代码有点复杂(远远超过我上面的 sn-p),并且已经被移植到许多不同的主要 Hibernate 版本上,因此很难梳理出理论上预期与观察到的行为。
标签: java hibernate orm filter hibernate-mapping