- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Hibernate的缓存机制.
Hibernate的缓存机制
1. 内部缓存存在Hibernate中又叫一级缓存,属于应用事务级缓存
2. 二级缓存:
a) 应用及缓存
b) 分布式缓存
条件:数据不会被第三方修改、数据大小在可接受范围、数据更新频率低、同一数据被系统频繁使用、非 关键数据
c) 第三方缓存的实现
Hibernate缓存概述
缓存是介于物理数据源与应用程序之间,是数据库数据在内存中的存放临时copy的容器,其作用是为了减少应用程序对物理数据源访问的次数,从而提高了应用的运行性能。Hibernate在进行读取数据的时候,根据缓存机制在相应的缓存中查询,如果在缓存中找到了需要的数据(我们把这称“缓存命中),则就直接把命中的数据作为结果加以利用,避免了建立数据库查询的性能损耗。Hibernate缓存分类
一级缓存(session):内部缓存
事务范围:缓存只能被当前事务访问。缓存的生命周期依赖于事务的生命周期,当事务结束时,缓存也就结束生命周期。
二级缓存(sessionFactory):缓存被应用范围内的所有事务共享?这些事务有可能是并发访问缓存,因此必须对缓存进行更新。缓存的生命周期依赖于应用的生命周期,应用结束时,?缓存也就结束了生命周期,二级缓存存在于应用范围。集群范围:在集群环境中,缓存被一个机器或者多个机器的进程共享。缓存中的数据被复制到集群环境中的每个进程节点,进程间通过远程通信来保证缓存中的数据的一致性,?缓存中的数据通常采用对象的松散数据形式,二级缓存也存在与应用范围。注意:对大多数应用来说,应该慎重地考虑是否需要使用集群范围的缓存,再加上集群范围还有数据同步的问题,所以应当慎用。多种范围的缓存处理过程持久化层可以提供多种范围的缓存。如果在事务范围的缓存中没有查到相应的数据,还可以到应用范围或集群范围的缓存内查询,如果还是没有查到,那么只有到数据库中查询了。
缓存应用的范围:修改少,数量在可以接受的范围内
使用二级缓存的原则:
◆数据不会被第三方修改
◆同一数据系统经常引用
◆数据大小在可接受范围之内
◆关键数据或不会被并发更新的数据
hibernate引入第三方的缓存组件EHCACHE,下面是具体的实现步骤:
修改hibernate.cfg.xml配置引入ehCache缓存
hibernate-configuration?
?
????????????????????????session-factory?
?
????????????????????????????????property?name=vider_class?
?
????????????????????????????????????????net.sf.ehcache.hibernate.EhCacheProvider ?
?
????????????????????????????????/ SPANproperty?
?
?????????????????????????????????
?
????????????????????????????????property?name=hibernate.cache.use_query_cachetrue/ SPANproperty?
?
????????????????????????/ SPANsession-factory?
?
????????????????/ SPANhibernate-configuration?
?
在src根目录下加入ehcache.xml文件,具体内容如下:
ehcache?xmlns:xsi=/2001/XMLSchema-instance?xsi:noNamespaceSchemaLocation=ehcache.xsd?
?
????????????????defaultCache?
?
????????????????????????????maxElementsInMemory=10000?
?
????????????????????????????eternal=false?
?
????????????????????????????timeToIdleSeconds=120?
?
????????????????????????????timeToLiveSeconds=120?
?
????????????????????????????overflowToDisk=true?
?
????????????????????????????/?
?
????????????????/ SPANehcache?
?
在映射文件中指定缓存同步策略
class?name=com.tenly.bean.Student?
?
?
您可能关注的文档
- DW中CSS属性详解..doc
- DVR采集卡远程监控资料..doc
- E5BF83E79086E5ADA6E5AE9EE9AA8C..doc
- E5水电专业复习题集增值服务第4次-2009-8..doc
- EarnedValueAnalysis1..doc
- earthsdam..doc
- ebwfcpu医学_心理学选择题..doc
- eclipse2010年三月问题答录..doc
- ECDS上线电子票据市场将重新布局..doc
- ECTIONAREADINGCOMPREHENSION..doc
- 2.2.1.2-B1-急诊急救事件应急演练方案(精选11篇).docx
- 关于集中开展安全生产“风险管控隐患排查治理月”活动的通知.docx
- 医院住院病历质量监控管理规定(3篇).docx
- 医院住院病历质量监控管理规定(最新).docx
- 医院住院病历质量监控管理规定【推荐】.docx
- 八下12《诗经》二首《关雎》 教学课件.pptx
- 第二单元整本书阅读《红星照耀中国》课件 统编版语文八年级上册.pptx
- 2025年陕西省延安市单招(语文)测试模拟题库1套.docx
- 2025年陕西省咸阳市选调生考试(公共基础知识)综合能力测试题1套.docx
- 2025年青岛工程职业学院单招(语文)测试题库及参考答案一套.docx
文档评论(0)