- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、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 / property property?name hibernate.cache.use_query_cache true / property / session-factory / hibernate-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 / / ehcache ?
在映射文件中指定缓存同步策略
class?name com.tenly.bean.Student cache?usage read-write set?name classroom cache?usage read-only / set / class ?
usage属性说明:
◆read-only:只读。对于不会发生改变的数据,可使用只读型缓存。
◆nonstrict-read-write:不严格可读写缓存。如果应用程序对并发访问下的数据同步要求不是很严格的话,而且数据更新操作频率较低。采用本项,可获得良好的性能。
◆read-write 对于经常被读但很少修改的数据,可以采用这种隔离类型,因为它可以防止脏读这类的并发问题.
◆transactional(事物型)在Hibernate中,事务型缓存必须运行在JTA事务环境中。在测试query时,说明其将用二级缓存
query.setCacheable true ;?
3、释放缓存:
一级缓存的释放
Session.evict XXX 将某个特定的对象从内部缓存中清除,上述的XXX 为对象的实例名。使用此方法有两种适用情形,需要及时释放对象占用的内存维持系统的稳定性是不希望当前Session继续运用此对象的状态变化来同步更新数据库。Ses
您可能关注的文档
- HCSFQ系列三倍频电源发生装置.doc
- HCT204AF电流型互感器.doc
- HCVLF-60超低频高压发生器.doc
- HCX-1抗冲击.doc
- HCR110型汽油冲击夯RM70,RM80系列冲击夯.docx
- HCZN-油浸箔式吸收电容器.doc
- HD-KQ2A第二代驾校学员指纹考勤系统.doc
- HD-SDI分配器.doc
- HD5000笔记本显卡详尽规格.docx
- HD-SDI视频分配器.doc
- hibernate的理解3.doc
- hibernate中session的三种状态.doc
- Hibernate试验03_05批量立即加载.doc
- Hibernate试验_03_25-28级联持久化临时对象.doc
- HID程序总结_zzc.doc
- HIFIMANES100工程版试听分享.doc
- highcharts使用之柱状图.doc
- Higherfrequencyandepsilonupdateswithfull-waveforminversionindeepwaterWestAfrican.doc
- HighSensitiveMagneticTransducerConsistingofPZTTerfenol-DandUltrasonicHornwithHighQ.doc
- Highso【司法】备考计划.doc
最近下载
- 河南能源集团网络安全攻防知识培训(分享版)(1).pptx
- 2025年党员考试试题及答案.doc VIP
- 湖南公务员考试真题2024.docx VIP
- mPGES-2作为吸入全身麻醉药物异氟醚作用靶点的应用.pdf VIP
- 案例研究-案例研究:设计与方法.pdf VIP
- 2024届高考物理一轮复习热点题型归类训练专题13动力学和能量观点的综合应用(原卷版+解析).docx VIP
- 烟草质量检验竞赛通用知识题库-上(单选、多选题库).docx VIP
- 德育常规工作培训(1).pptx
- OMRON欧姆龙安全产品F3SG-SR PG系列安全光幕 多光束安全传感器F3SG-SR PG 系列 F3SG-□SR□系列安全光幕 用户手册.pdf
- 保险的培训资料1—开拓准客户.ppt VIP
文档评论(0)