`
demojava
  • 浏览: 548964 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

hibernate过滤器 filters

    博客分类:
  • ORM
阅读更多

hibernate过滤器 filters
过滤器条件相当定一个非常类似于类和各种集合上的 where 属性的约束子句;
定一个过滤器在<hibernate-mapping/>节点之内的<filter-def>节点
<filter-def name="myFilter">
 <filter-param name="myFilterParam" type="String"/>
<filter-def>
定义好了之后就可以在某个类中使用这个过滤器
<class name="myClass"....>
 <filter name="myFilter" condition=":myFilterParam=MY_FILTERED_COLUMN" />
</class>
也可以在集合中使用它:
<set ....>
 <filter name="myFilter" condition=":myFilterParam=MY_FILTERED_COLUMN" />
</set>
Session对象中会用到的方法有:enableFilter(String filtername),getEnabledeFilter(String filterName)
和disableFilter(String filterName),session中默认是不启动过滤器的,必须通过Session.enabledFilter()方法
显示的启动。该方法返回被启用的Filter的实例
session.enableFilater("myFilter").setParamter("myFilterParam","some-value");
<filter-def name="myFiltertest">
 <filter-param name="asofDate" type="date"/>
<filter-def>
<class name="Employee" .....>
<many-to-one .....>
<filter name="effectiveDate" condition=":asofDate between eff_start_dt and eff_end_dt"/>
</class>
定义好了就可以使用
Session session=.....;
session.enabledFilter("myFiltertest").setParameter("asofDate",new Date());
List result=session.createQuery("from Object as o where o.####>o.param")
.setLong("param",new Long(1000000)).list();
过滤器对加载某个类或集合的时候把不符合条件的数据过滤掉..当然过滤器的使用是手动配置也可以不实用过滤器

例如:可以使用过滤器得到集合的大小,而不必实例化整个集合:

((Integer))session.createFilter(collection,"select count(*)").list().get(0)).intValue();

((Integer)).iterate("select count(*) from ...").next()).intValue();

 

分享到:
评论

相关推荐

    ssh框架乱码过滤器Filter

    在Struts2的配置文件(struts.xml)中,我们可以添加一个全局拦截器链(interceptors)或过滤器链(filters)。以下是一个配置示例: ```xml &lt;filter-name&gt;charsetFilter &lt;filter-class&gt;...

    Spring/泛型Hibernate的实现

    最后,配置了Hibernate事务管理器`transactionManager`,以及使用AOP方式开启事务管理。 #### 三、Maven构建工程 Maven是一个项目管理和构建工具,能够帮助开发者自动化构建过程,简化依赖管理。在本案例中,我们...

    Hibernate3.5官方开发文档pdf + html

    15. **扩展性与插件**:了解Hibernate的可扩展性,如拦截器(Interceptors)、过滤器(Filters)以及第三方插件如Hibernate Search(全文检索)。 这些知识点覆盖了Hibernate 3.5的核心功能,开发者可以通过官方...

    MyEclipse开发SSH2(Struts2+Spring+Hibernate)教程

    2. **添加过滤器**:在“Filters”部分使用“Add”按钮添加新的过滤器,设定过滤器名为“s2”(可根据个人偏好命名),并指定过滤器类为StrutsPrepareAndExecuteFilter。 3. **配置过滤规则**:在“Filter Mappings...

    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 ...

    hibernate笔记

    - `filter`: 可能是关于Hibernate 过滤器(Filters)的笔记,过滤器允许在查询时动态添加条件,如多租户场景下的数据隔离。 - `iHib01`, `iHib02`, `iHib03`: 可能是按章节划分的笔记文档,分别介绍了Hibernate 的...

    hibernate3.2中文文档(chm格式)

    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 ...

    HibernateAPI中文版.chm

    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_PPT 教程

    最后,本教程可能还会涉及Hibernate的其他高级特性,如延迟加载(Lazy Loading)、级联操作(Cascade)、过滤器(Filters)和事件监听器(Listeners)等,这些都是在实际开发中非常实用的功能。 总的来说,这份...

    Hibernate 中文手册 3.1.2.pdf

    由于 Hibernate 的高度可配置性,它允许开发者根据不同的需求来定制其行为,例如通过拦截器(Interceptors)来改变对象状态的持久化行为,通过监听器(Listeners)来响应持久化事件,以及通过过滤器(Filters)来对...

    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 ...

    Hibernate 中文 html 帮助文档

    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 参考文档

    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教程

    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 ...

    hibernate 体系结构与配置 参考文档(html)

    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映射...

    学习常用知识(java,sql,oracle,ejb,ssh,struts,xml,监听器,拦截器,过滤器)

    过滤器(Filters)可以对HTTP请求和响应进行预处理和后处理,如字符编码转换、权限检查等。 这些技术的综合运用能够构建出高效、可维护的企业级Web应用。对于初学者来说,逐步学习和实践这些知识,将有助于提升技能...

    Struts+Hibernate+MyEclipse+Tomcat+MySQL的乱码之解决篇

    - 创建一个过滤器类`SetCharacterEncodingFilter`,该过滤器会在请求到达控制器之前设置正确的编码。 - 配置过滤器类: ```java package com.ruder.filters; import java.io.IOException; import javax....

    Hibernate_3.2.0_符合Java习惯的关系数据库持久化

    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 annotation帮助文档

    - **过滤器**:使用 `@Filter` 和 `@Filters` 注解来定义条件过滤器。 - **查询**:使用 `@NamedQuery` 和 `@NamedNativeQuery` 注解来定义命名查询。 #### 3. 通过 XML 覆写元数据 - **原则**:Hibernate 允许...

    Hibernate 培训.pdf

    #### 八、Hibernate Filters - **概述**:Filter 用于限制查询结果集,可以在运行时动态启用或禁用。 - **应用场景**:如根据用户角色过滤数据。 #### 九、Hibernate 缓存 - **概述**:Hibernate 提供了一级缓存...

Global site tag (gtag.js) - Google Analytics