转自:http://42087743.iteye.com/blog/305219
Hibernate提供了对类使用预先定义的过滤器条件的功能,并提供了专门的Filter类.
[list]
首先在需要过滤的model类的hbm.xml中:
-
<classname="com.u2map.model.oneToOne.Pwd">
-
<idname="id"column="id"type="integer">
-
<generatorclass="foreign">
-
<paramname="property">member</param>
-
</generator>
-
</id>
-
<propertyname="pwd"column="pwd"type="string"></property>
-
<one-to-onename="member"constrained="true"class="com.u2map.model.oneToOne.Member"></one-to-one>
-
-
<filtername="myFilter"condition="pwdlike:myFilterParam"/>
-
</class>
-
-
-
<filter-defname="myFilter">
-
<filter-paramname="myFilterParam"type="string"/>
-
</filter-def>
[/list]
[list]
其次,在testcase中加上过滤:
-
-
session.enableFilter("myFilter").setParameter("myFilterParam","%a%");
-
Queryquery=session.createQuery("fromPwdpwherep.id=:id");
-
query.setParameter("id",3);
-
Pwdmember=null;
-
try{
-
member=(Pwd)query.uniqueResult();
-
}catch(HibernateExceptione){
-
e.printStackTrace();
-
}
-
Assert.assertEquals(member.getId(),3);
-
Assert.assertEquals(member.getPwd(),"abc");
[/list]
[list]
查看下hibernate生成的sql语句,证明filter已经加上:
-
Hibernate:selectpwd0_.idasid1_,pwd0_.pwdaspwd1_fromPwdpwd0_wherepwd0_.pwdlike?andpwd0_.id=?
分享到:
相关推荐
hibernate过滤器应用 及其分页
Hibernate扩展 用于为对话模式中的开放会话创建动态Hibernate过滤器和扩展的项目(从旧的Hibernate扩展项目重构)
17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 18.1.2. 只定义XML映射 18.2. XML映射元数据 18.3. 操作XML数据 19. 提升性能 19.1. 抓取策略(Fetching ...
17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 18.1.2. 只定义XML映射 18.2. XML映射元数据 18.3. 操作XML数据 19. 提升性能 19.1. 抓取策略(Fetching ...
17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 18.1.2. 只定义XML映射 18.2. XML映射元数据 18.3. 操作XML数据 19. 提升性能 19.1. 抓取策略(Fetching ...
17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 18.1.2. 只定义XML映射 18.2. XML映射元数据 18.3. 操作XML数据 19. 提升性能 19.1. 抓取策略(Fetching ...
17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 18.1.2. 只定义XML映射 18.2. XML映射元数据 18.3. 操作XML数据 19. 提升性能 19.1. 抓取策略(Fetching ...
17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 18.1.2. 只定义XML映射 18.2. XML映射元数据 18.3. 操作XML数据 19. 提升性能 19.1. 抓取策略(Fetching ...
18.1. Hibernate 过滤器(filters) 19. XML映射 19.1. 用XML数据进行工作 19.1.1. 指定同时映射XML和类 19.1.2. 只定义XML映射 19.2. XML映射元数据 19.3. 操作XML数据 20. 提升性能 20.1. 抓取策略(Fetching ...
1. Hibernate入门 1.1. 前言 1.2. 第一部分 - 第一个Hibernate应用程序 ... Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 18.1.2. 只定义XML映射 18.2. XML映射...
17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 18.1.2. 只定义XML映射 18.2. XML映射元数据 18.3. 操作XML数据 19. 提升性能 19.1. 抓取策略(Fetching ...
Hibernate 3.x过滤器的高级应用
17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 18.1.2. 只定义XML映射 18.2. XML映射元数据 18.3. 操作XML数据 19. 提升性能 19.1. 抓取策略(Fetching ...
18.1. Hibernate 过滤器(filters) 19. XML映射 19.1. 用XML数据进行工作 19.1.1. 指定同时映射XML和类 19.1.2. 只定义XML映射 19.2. XML映射元数据 19.3. 操作XML数据 20. 提升性能 20.1. 抓取策略...
Hibernate 过滤器(filters) 19. XML映射 19.1. 用XML数据进行工作 19.1.1. 指定同时映射XML和类 19.1.2. 只定义XML映射 19.2. XML映射元数据 19.3. 操作XML数据 20. 提升性能 20.1. 抓取策略(Fetching ...
17.1. Hibernate 过滤器(filters) 18. XML映射 18.1. 用XML数据进行工作 18.1.1. 指定同时映射XML和类 18.1.2. 只定义XML映射 18.2. XML映射元数据 18.3. 操作XML数据 19. 提升性能 19.1. 抓取策略(Fetching ...
使用Hibernate过滤器限制基于租户的查询结果。 在创建/更新实体期间使用Hibernate拦截器强制执行租户详细信息。 使用Spring AOP(AspectJ)设置过滤器参数。 说明: 每个请求都经过一个自定义的servlet过滤器,...
对于hibernate中session周期的控制
Seam - 语境相关的组件[满江红20071230]............................................................................................................................ 1 Java EE 框架...........................
开发中总结的通用过滤器配置,包括EncodingFilter类、jsp页面配置和web.xml文件的配置代码