Hibernate入门BLOG[十四、Hibernate的懒加载和缓存机制]

Hibernate的缓存机制

在创建数据库连接并且建立通信的过程消耗的资源和过程是比较复杂而且多的。因此Hibernate建立了相关的缓存机制。

Hibernate缓存分为2级:session级别和第三方缓存插件

二级缓存:

交给了第三方的缓存框架。

Oscatch

1、配置

<!--设置hibernate2级缓存。默认情况下为false-->

<propertyname="hibernate.cache.use_second_level_cache">false</property>

<propertyname="cache.provider_class">org.hibernate.cache.OSCacheProvider</property>

<!--指定需要缓存的对象-->

<class-cacheusage="read-write"class="cn.hibernate.model.User"/>

指定缓存对象:也可以再hbm.xml里面配置

<cacheusage="read-write"/>

</hibernate-mapping>

2、加入osCache配置的properties文件。这个文件在hibernate的下载文件中有相关的参考


同样也是加入classPath下面

读取顺序为:

一级缓存---二级缓存----数据库

Clear方法会清楚1级缓存

统计信息:

hibernate.generate_statistics

<!--统计信息的配置-->

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

实用统计信息:

Statisticsss=((Session)s).getSessionFactory().getStatistics();

//2级缓存的统计情况

System.out.println(ss.getSecondLevelCacheHitCount());


你可能感兴趣的:(Hibernate)