一级缓存也叫Session缓存,以下对一级缓存做个总结(以下操作均为在同一Session进行)
操作 |
一级缓存是否起作用 |
load,get |
Y |
运用HQL语句获取实体,通过Iterator进行读取 |
Y |
运用HQL语句获取实体某一普通属性,通过Iterator进行读取 |
N |
运用HQL语句获取实体,通过List进行读取 |
N |
运用HQL语句获取实体某一普通属性,通过List进行读取 |
N |
备注
1.当运用Itertor进行实体读取的时候,要注意n+1的问题(iterator会先读取符合条件的所有id值,然后再对每个id值所对应的实体进行查询)
2.可以运用session.evict(Object object)与session.clear()方法进行缓存释放
分享到:
相关推荐
hibernate一级缓存和二级缓存的区别与联系
hibernate的一级缓存和二级缓存,hibernate的一级缓存和二级缓存,hibernate的一级缓存和二级缓存,hibernate的一级缓存和二级缓存,hibernate的一级缓存和二级缓存
使用一个简单的案例去模拟hibernate中的session级别(即一级缓存)的缓存,大家可以下载看看,内容很简单,但是很能说明问题
Hibernate 一级缓存和二级缓存的区别
Hibernate一级缓存、二级缓存以及查询缓存实例
主要讲解hibernate缓存的配置和和使用方法,以及一级缓存和二级缓存的定义和区别,和查询缓存的使用
Hibernatehibernate一级缓存.pdf
详细描述了,Hibernate中一级缓存和二组缓存的思想思路,以及使用方法,使用情况。
用以介绍hibernate 框架的缓存机制
以及调用查询接口的list()、iterate()或filter()方法时,如果在Session缓存中还不存在相应的对象,Hibernate就会把该对象加入到第一级缓存中。当清理缓存时,Hibernate会根据缓存中对象的状态变化来同步更新数据库。...
NULL 博文链接:https://cdxs2.iteye.com/blog/1936594
NULL 博文链接:https://jiaguwen123.iteye.com/blog/740606
NULL 博文链接:https://12345678.iteye.com/blog/721910
一对一映射 hibernate优化配置一级二级缓存步骤 有图有真相
Hibernat一级缓存(源码) 需要的自己下载参考!!!
它可以使用不同的缓存实现,如 EhCache 、 JBossCache 、 OsCache 等 (二级缓存是缓存实体对象的) 还有一个类型的 CACHE 就是 QueryCache . 它的作用就是缓存一个 Query 以及 Query 返回对象的 Identifier 以及...
NULL 博文链接:https://364232252.iteye.com/blog/2369161
Hibernate一级缓存和二级缓存【内附二级缓存数据存储结构】
Hibernate二级缓存 在一个数据库系统中,如果缓存设置的合适,那么可以极大的提高系统的效率,Hibernate作为一个ORM工具 提供了缓存的机制,包括一级(Session级)缓存和二级(SessionFactory级)缓存。这里主要...
做一个hibernate 二级缓存的例子,其中都已经加了注释,一看就明白,数据库需要自己建