- 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
HQL 查询实体 查询单个属性 查询多个属性 条件查询 聚合函数 查询单个结果集 排序 分组 子查询 导航查询 * 分页 连接查询(联表查询) 批量更新 SQL 动态查询 缓存 缓存是数据库数据在内存中的临时容器,它包含了库表数据在内存中的临时拷贝,位于数据库和访问层之间。 ORM在进行数据读取时,会根据缓存管理策略,首先在缓冲中查询,如果发现,则直接使用,避免数据库调用的开销。 数据缓存的策略: 事务级缓存:当前事务范围内的数据缓存 应用级缓存:某个应用中的数据缓存 分布式缓存:多个应用,多个JVM之间共享缓存。分布式缓存由多个应用级缓存实例组成集群,通过某种远程机制实现各个缓存实例之间的数据同步,任何一个实例的数据修改后,将导致整个集群间的数据状态同步。 Hibernate缓存分为两个层次:一级缓存(事物级缓存)和二级缓存(应用级 缓存和分布级缓存) 5. Hibernate的缓存在两种情况下发挥作用: 根据主键加载实体(po对象) get,load 加载关联对象 使用HQL查询时 List,iterator 一级缓存 通过实验了解一级缓存特性: 同一session中发出两次load 同一session中发出两次get 同一session中发出两次iterate查询实体对象 同一session中发出两次list查询实体对象 同一session中发出一次list,一次iterate 查询实体对象 同一session中发出两次iterate查询属性 同一session中发出两次list查询属性 两个Session中load 在同一session中先存再load存过的对象 一级缓存管理 批量更新 一级缓存 一级缓存的数据结构是Map,用于存储查询实体。Map的key存放实体的Id,Map的value存放实体(po对象)本身。所以一级缓存无法存储查询的属性。 一级缓存的生命周期与Session有关,Session产生时一级缓存创建,Session关闭时一级缓存销毁 Get,Load,Iterator方法读写一级缓存,List方法只写不读一级缓存 一级缓存不能禁用,但可以通过Session的clear方法和evict方法清理一级缓存,从而达到禁止写缓存的效果 Session的save方法会写缓存,在批量插入数据时要注意对一级缓存做定时清理。Hibernate的批量处理效率不高,建议使用Session.connection()或得Jdbc连接后使用Jdbc的相关API做批处理操作 二级缓存 二级缓存也称进程级的缓存或SessionFactory级的缓存,二级缓存可以被所有的session共享。 二级缓存的生命周期和SessionFactory的生命周期一致,SessionFactory可以管理二级缓存。 Hibernate 默认情况下是打开的,提供一个Hashtable存储二级缓存,但只适用于研发,开发中为第三方缓存组件提供了接入接口,我们可以根据不同情况选择不同的实现。 二级缓存也只能缓存实体对象,不缓存属性。 ehcache二级缓存的配置和使用: * 将echcache.xml文件拷贝到src下 * 开启二级缓存,修改hibernate.cfg.xml文件 property name=hibernate.cache.use_second_level_cachetrue/property * 指定缓存产品提供商,修改hibernate.cfg.xml文件 property name=vider_classorg.hibernate.cache.EhCacheProvider/property * 指定那些实体类使用二级缓存(两种方法) * 在映射文件中采用cache标签 * 在hibernate.cfg.xml文件中,采用class-cache标签 二级缓存 通过实验了解一级缓存特性: 不同的session中调用两次load方法加载同一实体 不同的session中调用两次get方法加载同一实体 不同session中调用两次iterator方法查询实体 不同session中调用一次list方法查询实体,再调一次iterator方法 不同session中调用两次list方法查询实体 不同session中调用两次iterator方法查询属性 一个session中调用save方法保存瞬时态实体,然后另一个session再load它 管理二级缓存 一二级缓存交互 session.setCacheMode() CacheMode.PUT CacheMode.GET CacheMode.NORMAL 二级缓存 Get,Load,Iterator方法读写二级缓存,List方法只写不读二级缓存 总配置文件h
您可能关注的文档
- Hadoop中HDFS的存储机制.doc
- 第五章 操作对象.ppt
- 配置管理(理论课)2.ppt
- 第二章 应用型GIS系统分析.ppt
- 国土软件开发部代码规范(V1.0).doc
- 用 Amazon Web Services 进行云计算_第 2 部分 用 S3 在云中存储数据.docx
- oracle_建立和管理表.ppt
- SDO对EMF的依赖.doc
- 非常好的C#课件第二讲.ppt
- 第三章数据挖掘概念与DMX.ppt
- 2025年江苏省公务员公开遴选笔试试题及答案(综合类).docx
- 2025年江西省公开遴选公务员笔试题及答案解析(A类) .docx
- 2025年江西省公开遴选公务员笔试题及答案解析(B类) .docx
- 城市公园改造提升项目2025年社会稳定风险评估与社区文化产业发展政策研究报告.docx
- 鲁教五四版八年级上册英语精品教学课件 Unit 7 Period 5 Section B(2a-2e).ppt
- 2025年江苏省公务员遴选考试模拟试题及答案.docx
- 2025年江苏省公务员遴选考试模拟试题及答案解析.docx
- 2025年江西省公务员公开遴选笔试试题及答案(B类).docx
- 2025年江苏省公务员遴选试题题库及答案.docx
- 2025年江西省公务员遴选笔试题库及答案解析.docx
最近下载
- 日照市基本医疗保险政策与经办业务知识考试题库2025 .pdf VIP
- 小学英语教学评一体化策略与实践.pptx VIP
- 中小学英语教学评一体化的理论与实践.pptx VIP
- 管理沟通——原理、策略及应用(第三版)课件全套 赵洱岽 第1--14章 管理沟通概论---数字化时代的沟通.pptx
- 小学英语教学评一体化的实践探究.pptx VIP
- 小学英语教学中“教—学—评”一体化教学策略运用.pptx VIP
- 北师大版六年级上册数学《百分数的认识》(课件)(共17张PPT).pptx VIP
- 2025村委换届考试题及答案.docx VIP
- 2024《小红书运动户外行业白皮书》.docx
- 推荐浙江省土建安全技术资料台帐(十二本).doc VIP
文档评论(0)