`
mixer_a
  • 浏览: 356937 次
社区版块
存档分类
最新评论

实现OSCache二级缓存的配置方案

阅读更多

今天在使用hibernate的时候要配置二级缓存,给大家分享一下二级缓存的配置方法

*********实现OSCache二级缓存的配置方案***********

1.首先我们需要在hibernate.cfg.xml中配置几个属性:

<!--   是否开启二级缓存,缺省为开启  -->
< property  name ="cache.use_second_level_cache" > true </ property >
<!--   选择第三方缓存框架支持  -->
< property  name ="cache.provider_class" > org.hibernate.cache.OSCacheProvider </ property >

为了能够查看二级缓存的使用效果,还可以配置:

< property  name ="generate_statistics" > true </ property >


2.然后是哪些类需要配置二级缓存:(举例User实体类)

< class-cache  class ="com.sy.vo.User"   usage ="read-write"   />


其中usage是策略,属性值:

read-only:只读,效率最高。
read-write:读写,效率较低。但是能保证并发正确性。
nonstrict-read-write:非严格的读写,效率较高,不用加锁,不能保证并发正确性。例如帖子浏览量。
transactional:事务性缓存,可回滚缓存数据,一般缓存框架不带有此功能,实现很复杂。

这样hibernate.cfg.xml就配置完了。

3.配置映射文件User.hbm.xml,加入这句代码:

< cache  usage ="read-write" />

4.加入oscache.properties配置文件到classPath下,这个文件在hibernate源码包中有。里面
有很多属性可以设置,如果只是简单实现,不需要修改。不修改的情况下,只有一个配置,是
配置二级缓存的大小,这个视本机内存而定。默认1000。
其中还有一个分布式的配置,可以设置主机IP等等。由于资源有限,我没有做实验。在此不做过多介绍。

OK,配置完成!

----------------------------------------------------------------------------------------------------------

写一个测试类,测试吧。
补充一个测试方法:

Statistics st = HibernateUtil.getSessionFactory().getStatistics();

通过输出st的信息,可以查看缓存的使用情况。

再补充一个清除二级缓存的方法:

HibernateUtil.getSessionFactory().evict(User. class ); // 清除一个实体类的所有缓存
HibernateUtil.getSessionFactory().evict(User. class ,id); // 清除单条缓存

 

3
1
分享到:
评论

相关推荐

    二级缓存OScache配置

    **二级缓存OSCache配置详解** OSCache是一个高效、易用的Java缓存解决方案,尤其适合于Web应用程序中。它提供了页面级缓存和部分页面缓存的能力,从而减轻数据库压力,提高应用性能。以下是对OSCache配置的详细说明...

    hibernate+oscache实现二级缓存实例

    OSCache作为二级缓存的实现,提供了高效、可配置的缓存服务。它可以缓存对象、集合甚至整个页面,有助于减少数据库负载。在本实例中,我们将看到如何配置OSCache与Hibernate集成,以及如何在实际项目中使用这些缓存...

    oscache缓存技术入门实例

    osCache的配置主要通过XML文件完成,包括缓存配置、更新策略、缓存监听器等。例如: ```xml diskPersistent="false" timeToIdleSeconds="120" timeToLiveSeconds="120" memoryStoreEvictionPolicy="LRU"&gt; ``` 在...

    Hibernate OSCache缓存

    总之,Hibernate 结合 OSCache 实现的二级缓存能够显著提升数据读取效率,降低数据库压力,但需要注意合理配置和使用,以确保最佳性能和数据一致性。在实际项目中,应根据具体业务场景选择合适的缓存策略,并持续...

    osCache,缓存

    例如,在Hibernate中启用osCache,可以实现二级缓存,进一步提高ORM操作的效率。 7. **序列化支持**:osCache支持对象的序列化,这意味着不仅可以缓存基本类型和字符串,还可以缓存复杂的对象结构。 8. **性能优化...

    带二级缓存和业务封装的SSH项目源码

    这个项目中的二级缓存可能使用了EhCache或OSCache等第三方缓存解决方案,将经常访问的数据存储在内存中,减少数据库查询次数,提高响应速度。 **业务封装** 是指将业务逻辑抽象出来,形成独立的服务或组件,以便于...

    oscache详细配置文档

    OSCache 是一个强大的开源缓存解决方案,主要用于提升 Java Web 应用程序的性能。它能够缓存页面内容,减轻数据库压力,并减少服务器的资源消耗。本文将详细介绍 OSCache 的配置和使用方法。 **一、缓存整个页面** ...

    springMVC二级缓存配置

    Spring 3.1 引入了激动人心的基于注释(annotation)的缓存(cache)技术,它本质上不是一个具体的缓存实现方案(例如 EHCache 或者 OSCache),而是一个对缓存使用的抽象,通过在既有代码中添加少量它定义的各种 ...

    OSCache学习例子 实例

    OSCache是开源的Java缓存解决方案,主要用于提高Web应用程序的性能和响应速度。它是由OpenSymphony团队开发的,能够缓存对象、SQL查询...在实践中,还可以考虑与其他技术,如Hibernate的二级缓存集成,进一步提升性能。

    基于数据库缓存的Web应用性能优化解决方案.pdf

    通过配置适当的缓存提供者(如EHCache或OSCache),可以在SessionFactory级别实现跨Session的数据共享。这有助于减少数据库的直接访问,提高应用性能。 3. **自定义缓存策略**:除了使用Hibernate提供的缓存外,还...

    Hibernate的缓存策略

    - **外置缓存的实现**:由于二级缓存是可配置的,因此可以根据具体需求选择不同的实现方案。常见的二级缓存插件有Ehcache、OSCache等。 - **数据一致性问题**:由于二级缓存中的数据是数据库数据的副本,因此需要...

    教你如何用好oscache的详细文档

    **osCache 是一款高效、轻量级的 Java 缓存框架,主要用于提高应用程序的性能和减少对数据库的访问。在本文中,我们将深入探讨 osCache 的核心概念、使用场景以及如何在项目中有效地利用它。** ### 一、缓存的重要...

    oscache-2.0.jar

    总结,OSCache作为一个强大的缓存解决方案,为企业级Java应用提供了高性能的缓存支持。理解和熟练运用OSCache,有助于提升系统的运行效率,降低数据库压力,从而优化整体架构。在实际开发中,我们需要根据项目需求,...

    Hibernate缓存

    “工具”可能指的是使用特定的缓存工具,如Oscache,它是Hibernate常用的二级缓存解决方案之一。 【压缩包子文件的文件名称列表】: 1. Oscache_入门.doc:这是关于Oscache的介绍文档,可能包含Oscache的基本概念、...

    应用OSCache提升J2EE系统运行性能

    OSCache是Java应用程序中常用的缓存解决方案之一,尤其在J2EE系统中,它能显著提升系统的运行性能。本文将深入解析OSCache的工作原理、主要功能以及如何在实际项目中应用,以帮助开发者理解并有效地利用这个工具。 ...

    Oscache-入门教程.doc

    在 JSP 页面中,可以通过以下方式使用 OSCache 标签库进行缓存配置: ```jsp &lt;%@ taglib uri="http://www.opensymphony.com/oscache" prefix="oscache" %&gt; &lt;oscache:cache page="true" timeToLive="600"&gt; &lt;!-- ...

    oscache-2.3.jar

    oscache-2.3.jar是专门为Java应用程序设计的一个高效、轻量级的缓存框架,由OpenSymphony开源组织开发。本文将深入探讨oscache的核心功能、工作原理及其在实际应用中的价值。 一、oscache简介 oscache全称为...

    hibernate 缓存机制

    Hibernate支持多种二级缓存插件,如EHCache、OSCache、SwarmCache、JBossCache和TreeCache。以EHCache为例,配置通常在`hibernate.cfg.xml`文件中完成,你需要声明`CacheProvider`为EHCache,并设置相关属性,如缓存...

    JSP 开发之hibernate配置二级缓存的方法

    在JSP开发中,使用...配置Hibernate的二级缓存,需要在`hibernate.cfg.xml`文件中进行设置。首先,开启二级缓存和查询缓存,如下所示: ```xml &lt;property name="hibernate.cache.use_second_level_cache"&gt;true ...

Global site tag (gtag.js) - Google Analytics