八、二级缓存在项目中的集成和使用
1.
将
echcache.xml
文件拷贝到
src
下
,
二级缓存
hibernate
默认是关闭的,手动开启
2.
开启二级缓存,修改
hibernate
.cfg.xml
文件
,
<property name=”hibernate
.cache.user_second_level_cache”>true</property>
3.
指定缓存产品提供商
<property name=”hibernate
.cache.provider_calss”>org.hibernate
.cache.EhCacheProvider</property>
4.
指定那些实体类使用二级缓存(两种方法,推荐使用第二种)
第一种:在
*.hbm.xml
中,在
<id>
之前加入
<cache usage=”read-only” />,
使用二级缓存
第二种:在
hibernate
.cfg.xml
配置文件中
,
在
<mapping resource=”com/Studnet.hbm.xml” />
后面
加上:
<class-cache class=” com.Studnet” usage=”read-only” />
总结:
不要想当然的以为缓存一定能提高性能,仅仅在你能够驾驭它并且条件合适的情况下才是这样的。
hibernate
的二级缓存限制还是比较多的,不方便用
jdbc
可能会大大的降低更新性能。在不了解原理的情况下乱用,可能会有
1+N
的问题。不当的使用还可能导致读出脏数据。
如果受不了
hibernate
的诸多限制,那么还是自己在应用程序的层面上做缓存吧。
在越高的层面上做缓存,效果就会越好
。就好像尽管磁盘有缓存,数据库还是要实现自己的缓存,尽管数据库有缓存,咱们的应用程序还是要做缓存。因为底层的缓存它并不知道高层要用这些数据干什么,只能做的比较通用,而高层可以有针对性的实现缓存,所以在更高的级别上做缓存,效果也要好些吧。
对于性能的看法是:合理的性能而不是最高的性能。什么是合理的?用户能感觉到(或敏感的)的范围内,不成为物理上业务处理的瓶颈,比如常说的
3
秒之内响应等。
分享到:
相关推荐
深入理解hibernate缓存,不再惧怕hibernate缓存...
hibernate缓存机制 hibernate缓存机制 hibernate缓存机制
Hibernate缓存.docHibernate缓存.doc
Java Hibernate缓存深入详解
Hibernate 缓存 深入 详解 ITEye
Hibernate是一种面向Java环境的ORM工具。系统地分析了Hibernate的缓存结构,并描述了二级缓存的查询过程、缓存策略;同时总结了二级缓存使用中的一些限制,以及使用二级缓存的优化策略。
关于hibernate缓存的一个ppt课件,60+幻灯片,有需要的可以看一下
Hibernate缓存,性能优化
Hibernate缓存原理及调优策略 Hibernate缓存原理调优策略
Hibernate缓存深入详解,很好的缓存原理参考资料
Hibernate缓存的资料 Hibernate缓存机制对Hibernate的性能发挥一直处于一个极其重要的作用,它是持久层性能提升的关键。 hibernate缓存在应用系统中的位置 Hibernate缓存介于Hibernate应用和数据库之间,缓存...
hibernate的缓存机制以及优化策略
避免项目麻烦,禁用 hibernate 缓存
关于hibernate缓存的讲解,以及缓存的优化。讲的非常透彻,对于项目中Hibernate缓存的优化会有很大帮助!
Hibernate二级缓存Hibernate二级缓存Hibernate二级缓存Hibernate二级缓存Hibernate二级缓存
hibernate缓存深入详解
首先说下Hibernate缓存的作用(即为什么要用缓存机制),然后再具体说说Hibernate中缓存的分类情况,最后可以举个具体的例子。 Hibernate缓存的作用: Hibernate是一个持久层框架