Hibernate的三种缓存
来源:互联网 发布:如何在程序员客栈接活 编辑:程序博客网 时间:2024/04/28 08:13
一级缓存
hibernate的一级缓存是跟session绑定的,那么一级缓存的生命周期与session的生命周期一致,因此,一级缓存也叫session级缓存或者事务级缓存。
支持一级缓存的方法有:
query.get()
query.load()
query.iterate() 只支持实体对象的时候,查询普通属性是不支持的
list方法会向一级缓存中放置数据 但是起自身不使用缓存
管理一级缓存:
session.clear
session.evict(Object obj)
在大批量数据操作的时候,如何避免一次性大量的实体数据导致内存溢出
先flush,再clear
如果数据量特别大,则考虑用jdbc实现,如果jdbc仍不能满足,则考虑采用数据库本身特定导入工具。
二级缓存
二级缓存也称为进程级缓存或者sessionfactory级的缓存,二级缓存可以被所有的session共享,二级缓存的生命周期跟sessionfactory的生命周期一致的。
二级缓存使用(echache)
二级缓存管理
可使用session.setCacheMode(CacheMode.IGNORE);进行管理
查询缓存
其是针对普通属性结果集的缓存,对于实体对象的结果集只缓存id
查询缓存的生命周期,当关联表的数据发生修改,那么查询缓存的生命周期结束。
配置:
使用:
//必须手动启用查询缓存 iterate()不使用查询缓存 list会用
query2.setCacheable(true);
阅读全文
0 0
- Hibernate的三种缓存
- jpa hibernate的三种缓存机制
- Hibernate缓存简介及领域对象的三种状态
- Hibernate缓存简介及领域对象的三种状态
- hibernate之缓存以及pojo对象的三种状态
- Hibernate学习笔记之三种缓存
- Hibernate入门(三)之hibernate 的session的缓存机制
- Hibernate缓存(三)
- Hibernate学习笔记(三) — Hibernate 的一级缓存意义
- Hibernate学习(三):Session的缓存及对象的状态
- Hibernate学习(三):Session的缓存及对象的状态
- hibernate缓存机制(三)
- Hibernate延迟加载、三种状态、脏检查 缓存
- hibernate(二)一级缓存和三种状态解析
- Curator的三种缓存。
- 【hibernate】hibernate的三种状态
- hibernate中存在的两种缓存
- Hibernate的缓存处理
- JAVA实例化class的三种方式
- 二叉树表示多叉树.java
- [第一章]在Python中如何让两个print()函数的输出打印在一行内?
- UML基础概念
- SQLite嵌入VB.net开发快速入门教程
- Hibernate的三种缓存
- QQ三方登录步骤详解
- Idea构建Maven项目教程
- nginx代理tomcat后,tomcat获取真实(非proxy,非别名)nginx服务端ip端口的解决方案
- html中offsetTop、clientTop、scrollTop、offsetTop各属性介绍
- IntelliJ IDEA 工具技巧
- 算法导论 练习题 15.5-4
- Redisson整合Spring
- USACO-Section1.2 Name That Number