http://www.javayou.com/diary/7141
http://www.blogjava.net/xmatthew/archive/2008/08/20/223293.html
两种方案
缓存同步策略:缓存同步策略决定了数据对象在缓存中的存取规则,我们必须为每个实体类指定相应的缓存同步策略.Hibernate中提供了4种不同的缓存同步策略:(暂时只记个概念吧)
1.read-only:只读.对于不会发生改变的数据可使用.
2.nonstrict-read-write:如果程序对并发访问下的数据同步要求不严格,且数据更新频率较低,采用本缓存同步策略可获得较好性能.
3.read-write:严格的读写缓存.基于时间戳判定机制,实现了"read committed"事务隔离等级.用于对数据同步要求的情况,但不支持分布式缓存,实际应用中使用最多的缓存同步策略.
4.transactional: 事务型缓存,必须运行在JTA事务环境中.此缓存中,缓存的相关操作被添加到事务中(此缓存类似于一个内存数据库),如事务失败,则缓冲池的数据会一同回滚到事务的开始之前的状态.事务型缓存实现了"Repeatable read"事务隔离等级,有效保证了数据的合法性,适应于对关键数据的缓存,Hibernate内置缓存中,只有JBossCache支持事务型缓存.
分享到:
相关推荐
13.3.2 Hibernate高速缓存架构 13.4 高速缓存实践 13.4.1 选择并发控制策略 13.4.2 理解高速缓存区域 13.4.3 设置本地的高速缓存提供程序 13.4.4 设置重复的高速缓存 13.4.5 控制二级高速...
它的高速读写能力使其成为缓存的理想选择,尤其是在处理大量数据时。 二级缓存是ORM框架(如Hibernate)中的一个重要特性,它可以在数据库和应用程序之间存储经常访问的数据,以减少对数据库的直接访问,从而提高...
缓存的基本思想是将常用但获取成本较高的数据存储在高速访问的媒介中,以减少对低速存储(如硬盘)的访问。在Hibernate中,缓存分为一级缓存和二级缓存。 - **一级缓存**:由Session管理,是内置的,不可卸载。每个...
一旦配置完成,Hibernate会在适当的时候自动将数据存入或从Memcached中获取,实现数据的高速缓存。 总的来说,`hibernate-memcached` 提供了一个方便的途径,让开发人员能够利用Memcached的强大缓存能力来提升基于...
整合Hibernate与Memcached,主要是为了利用Memcached的高速缓存特性,优化Hibernate的数据访问性能。`hibernate-memcached-1.1.0-sources.zip`提供的源码实现了一个Hibernate二级缓存提供者,它将Hibernate的查询...
这就是Redis作为一个分布式内存数据库发挥作用的地方,它能够作为Hibernate的二级缓存来存储数据,提供高速的数据访问。 Redis的引入为Hibernate带来了以下优势: 1. 高性能:由于Redis的数据存储在内存中,读写...
在Hibernate中,EhCache作为默认的CacheProvider,可以为ORM操作提供高速缓存服务。 7. **扩展性**:EhCache支持插件机制,可以通过添加不同插件来实现更高级的功能,如缓存监控、统计分析等。 在`ehcache-core-...
当我们将Hibernate与Memcached整合时,可以利用Memcached的高速缓存能力来优化Hibernate的数据访问性能。 在标题提到的“hibernate整合memcached需要的jar包”中,主要包括以下四个关键库: 1. **hibernate-...
它常被用作分布式缓存,提供高速的数据读写能力。Java开发者可以使用Jedis或Lettuce等客户端库与Redis进行交互。 2. **Memcached**:另一种流行的选择,是一个高性能的分布式内存对象缓存系统。Java中的...
1. **内存管理**:Ehcache采用分层存储策略,包括高速缓存(如堆内存储)和低速缓存(如磁盘存储),确保高访问频率的数据始终在内存中,同时兼顾大容量数据的存储。 2. **分布式缓存**:支持多节点间的缓存共享,...
缓存分为内存缓存和磁盘缓存,其中内存缓存由于其高速读写能力,通常用于存储频繁访问且大小有限的数据。 Ehcache是一款开源的、高性能的Java缓存解决方案,它被广泛应用于各种Java应用中。Ehcache支持本地缓存和...
第一级缓存默认开启,对同一个Session内的操作提供高速访问;第二级缓存是跨Session的,可配置第三方缓存实现,如Ehcache。 三、Hibernate操作持久化对象 1. 插入:通过Session的save()或saveOrUpdate()方法可以将...
二级缓存则可配置为全局共享,通常配合缓存提供商如Ehcache使用,以实现数据的高速访问。 八、一对多、多对一、一对一关系映射 在实际开发中,对象之间的关联关系是常见的。Hibernate支持多种关联映射,如一个实体...
`ehcache-1.5.0.jar`是Ehcache缓存库,是一个内存和磁盘存储的高速缓存系统。在Hibernate中,它可以用于缓存数据库查询结果,提高性能。 `hibernate-jpa-2.0-api-1.0.1.Final.jar`包含了Java Persistence API(JPA...
分布式缓存是一种将数据存储在分布式环境中的高速缓存技术,通常用于减轻数据库的负载,提高数据读取速度。常见的分布式缓存系统有Redis、Memcached、Hazelcast等。 2. **为什么要使用分布式缓存?** 主要原因...
9. **第13章 优化抓取和高速缓存**:讲解了Hibernate的性能优化技巧,如懒加载、Eager加载的权衡,以及第一级缓存和第二级缓存的使用,如何通过缓存提高应用程序性能。 10. **第14章 利用SQL和JPA QL查询**:详细...
5. `EHCache.jar`:默认的二级缓存方案,Hibernate可以通过它实现数据的高速缓存。 6. `Log4j.jar`:日志记录库,虽然不是必需的,但推荐使用,以便记录Hibernate操作的日志信息。 除了这些,还需要Java ...
4. 第二级缓存:源码中,Hibernate支持插件式的缓存机制,如Ehcache,这使得数据的高速访问成为可能。 四、核心概念解析 1. 映射配置:XML或注解形式的映射文件,定义了Java对象与数据库表的对应关系,源码中会看到...
由于Redis数据持久化在磁盘上,并且主要存储在内存中,因此它的读写速度非常快,适合做高速缓存。 2. **二级缓存**:在Hibernate中,一级缓存是每个Session内的缓存,而二级缓存则是在SessionFactory级别,可跨...
Coherence可以与ORM框架如Hibernate集成,为持久层提供高速缓存,提高数据库查询的效率。这通常涉及到配置Hibernate的二级缓存,将Coherence作为缓存提供商,以便在内存中存储和检索对象。 总的来说,Oracle ...