`

hibernate启用二级缓存

阅读更多
今天看了公司的项目,使用了hibernate开源框架,发现项目中好多配置数据(黑名单等)都是保存在static变量中,个人认为可使用hibernate的二级缓存来存储!

启用二级缓存步骤简介如下:

一、在hibernate.cfg.xml中启用二级缓存(参阅%HIBERNATE_HOME%\project\hibernate-ehcache\src\test\resources\hibernate-config\hibernate.cfg.xml配置文件)
<property name="hibernate.cache.use_query_cache">true</property>
		<property name="cache.use_second_level_cache">true</property>
		<property name="hibernate.cache.region.factory_class">org.hibernate.cache.EhCacheRegionFactory</property>


备注:从以上配置中看出是使用EHCache进行缓存管理,需将ehcache.xml放置到class路径中并导入jar包hibernate-ehcache-4.1.7.Final.jar、ehcache-core-2.4.3.jar、slf4j-api-1.6.1.jar,本次测试用的hibernate版本是hibernate-core-4.1.7.Final.jar

二、指定需要缓存的实体对象(entity.BlackList)
在BlackList.hbm.xml中加入如下配置
<cache usage="read-only"/>


在hibernate.cfg.xml中也可指定需要缓存的实体对象
<class-cache usage="read-only" class="entity.Blacklist"/>

在ehcache.xml中也可指定需要缓存的实体对象
<!-- 库中黑名单有563条记录,所以maxElementsInMemory指定为563 -->
<cache name="entity.Blacklist"
        maxElementsInMemory="563"
        eternal="true"
        timeToIdleSeconds="0"
        timeToLiveSeconds="0"
        overflowToDisk="false"
        />
可以看出在ehcache.xml中配置灵活性比较好!

补充:使用session.getSessionFactory().getCache().evictXXX()可清空指定的缓存

Hibernate+EhCache配置二级缓存

Hibernate4.1.4配置二级缓存EHCache步骤

张卫_Struts2.3.4_Hibernate4.1.4_Spring3.1.1视频教程源码、笔记下载

在Spring、Hibernate中使用Ehcache缓存

Ehcache 整合Spring 使用页面、对象缓存
分享到:
评论

相关推荐

    Spring集成的Hibernate配置二级缓存

    以EhCache为例,我们需要在项目中引入ehcache-core或ehcache的依赖,并在Hibernate配置文件(hibernate.cfg.xml或persistence.xml)中启用二级缓存,添加如下配置: ```xml &lt;property name="hibernate.cache.use_...

    hibernate5.1二级缓存包

    2. **配置**:在 Hibernate 的配置文件(如 hibernate.cfg.xml)中启用二级缓存,并指定使用的缓存提供商。例如,如果使用 Ehcache,需要设置 `&lt;property name="hibernate.cache.use_second_level_cache"&gt;true...

    Hibernate二级缓存

    3. **实体缓存配置**:接下来,在对应实体的映射文件(如`Customer.hbm.xml`)中,启用二级缓存支持。例如: ```xml ... ``` 这里的`usage`属性可以设置为`read-only`、`nonstrict-read-write`、`read-...

    为Spring集成的Hibernate配置二级缓存

    2. **配置Hibernate**:在Hibernate的配置文件`hibernate.cfg.xml`中启用二级缓存并指定缓存提供商。以下是一个使用Ehcache的示例: ```xml &lt;property name="hibernate.cache.use_second_level_cache"&gt;true ...

    hibernate一级和二级缓存配置与详解

    要启用二级缓存,首先需要引入支持二级缓存的插件,如EhCache或Infinispan。然后,在`hibernate.cfg.xml`配置文件中,指定缓存提供者,并开启二级缓存: ```xml &lt;property name="hibernate.cache.region.factory_...

    hibernate二级缓存实例

    2. 配置Hibernate:在hibernate.cfg.xml文件中启用二级缓存,并指定使用Ehcache作为二级缓存提供者。 3. 配置实体类:在实体类上使用`@Cacheable`、`@Cache`等注解,声明该类及属性参与缓存。 4. 配置缓存策略:...

    hibernate开启二级缓存和查询缓存

    2. 在 Hibernate 配置文件中启用二级缓存。 3. 在实体类上添加 `@Cacheable` 注解或者在映射文件中配置 `&lt;cache&gt;` 元素。 4. 配置实体类的缓存策略,例如使用 `@Cache(usage=CacheConcurrencyStrategy.READ_ONLY)` ...

    Spring4+Hibernate4二级缓存实例源码

    2. **配置Hibernate**:在hibernate.cfg.xml配置文件中,启用二级缓存并指定缓存提供者。例如: ```xml &lt;property name="hibernate.cache.use_second_level_cache"&gt;true &lt;property name="hibernate.cache.region....

    hibernate 二级缓存详解

    Hibernate 二级缓存是针对SessionFactory级别的全局缓存,与一级缓存(Session级别)不同,一级缓存只在单个Session生命周期内有效。二级缓存则允许不同Session之间共享数据,提高了数据访问效率,减少了对数据库的...

    hibernate的一级缓存和二级缓存

    对于读多写少的实体,启用二级缓存能显著提升性能。 一级缓存的管理主要由Session负责,通过evict()和clear()方法控制。evict()用于移除特定对象,clear()则清空整个缓存。二级缓存的管理则涉及更多的策略,包括...

    hibernate二级缓存示例源码

    对于每个实体类,我们需要决定是否启用二级缓存以及使用哪种缓存策略。在实体类上添加`@Cacheable`注解,可以启用二级缓存。同时,可以通过`@Cache`注解设置缓存策略,例如: ```java @Entity @Cacheable(true) @...

    hibernate二级缓存要导入的包

    2. **配置Hibernate**:在`hibernate.cfg.xml`中启用二级缓存并指定缓存提供者: ```xml &lt;property name="hibernate.cache.use_second_level_cache"&gt;true &lt;property name="hibernate.cache.region.factory_class...

    hibernate4.0使用二级缓存jar包

    -- 启用二级缓存 --&gt; &lt;property name="hibernate.cache.use_second_level_cache"&gt;true &lt;!-- 查询的二级缓存配置 --&gt; &lt;property name="hibernate.cache.use_query_cache"&gt;true ...

    hibernate二级缓存(包括注解方式)

    4. **注解配置**:在Java类或方法上使用注解可以方便地启用和配置二级缓存。例如,`@Cacheable`注解标记一个类为可缓存,`@Cache`注解可以进一步细化缓存配置,如区域、策略等。 5. **缓存区域**:在Hibernate中,...

    hibernate二级缓存所需要的 jar包

    在实际项目中,要启用Hibernate的二级缓存,需要进行以下步骤: 1. 引入上述jar包到项目的类路径中。 2. 配置Hibernate的`persistence.xml`或`hibernate.cfg.xml`文件,指定二级缓存提供商(如Ehcache)。 3. 在实体...

    Hibernate二级缓存技术

    ### Hibernate二级缓存技术详解 #### 一、概述 Hibernate 是一个开源的对象关系映射(ORM)框架,它简化了Java应用与关系型数据库之间的交互。为了提高性能和减少数据库的访问频率,Hibernate 提供了一级缓存和二...

    Hibernate4二级缓存Ehcache案例

    最后,为了让Hibernate知道哪些实体类需要启用二级缓存,我们需要在实体类上添加注解`@Cacheable`和`@Cache`。例如: ```java @Entity @Cacheable(true) @Cache(region = "com.example.YourEntityClass", usage = ...

    hibernate4配置二级缓存

    2. **配置Hibernate**:在hibernate.cfg.xml配置文件中启用二级缓存,并指定Ehcache为缓存提供者。 ```xml &lt;property name="hibernate.cache.use_second_level_cache"&gt;true &lt;property name="hibernate.cache....

    Hibernatehibernate二级缓存.pdf

    当SessionFactory创建时,它可以配置来启用二级缓存,并指定一个缓存提供商,例如Ehcache。这样,SessionFactory就能管理和维护缓存中的对象。 启用二级缓存的步骤包括: 1. 将缓存配置文件(如ehcache.xml)放入...

    hibernate二级缓存 SSH

    为了在SSH框架中启用Hibernate的二级缓存,你需要做以下几步: 1. **配置Hibernate**:在hibernate.cfg.xml中添加二级缓存提供商的配置,例如Ehcache,指定对应的XML配置文件路径。 ```xml &lt;property name="...

Global site tag (gtag.js) - Google Analytics