2019独角兽企业重金招聘Python工程师标准>>>

Hibernate三级缓存

一级缓存(session级别缓存):

1、session关闭后,缓存就没了;hibernate发出一条sql查询,若缓存中没有,则从数据库中查,查到之后放入缓存

2、以id为key值缓存对象

二级缓存(sessionFactory级别缓存):

1.hibernate没有提供相应的二级缓存组件,所以需要额外的二级缓存包EHcache

2.hibernate二级缓存存的仅仅是对象,就算只想查询这个对象的某几个属性,还是会把这个对象的所有信息查询出来。

3.当一级缓存关闭之后,一级缓存就失效了,若这个对象配置了二级缓存,就算session关闭,hibernate会从二级缓存(sessionFactory)中查到数据。

三级缓存(查询缓存:sessionFactory级别):

1、查询缓存是专门针对各种查询操作进行缓存。查询缓存会在整个SessionFactory的生命周期中起作用,存储的方式也是采用key-value的形式来进行存储的。

2、查询缓存中的key是根据查询的语句、查询的条件、查询的参数和查询的页数等信息组成的。而数据的存储则会使用两种方式,使用SELECT语句只查询实体对象的某些列或者某些实体对象列的组合时,会直接缓存整个结果集。而对于查询结果为某个实体对象集合的情况则只会缓存实体对象的ID值,以达到缓存空间可 以共用,节省空间的目的。

3、在使用查询缓存时,除了需要设置hibernate.cache.provider_class参数来启动二级缓存外,还需要通过hibernate.cache.use_query_cache参数来启动对查询缓存的支持。

注:缓存一般只对查询比较对,更改比较少的数据进行设置,若修改较多反而会影响hibernate的效率。

转载于:https://my.oschina.net/u/2291124/blog/515924

hibernate三级缓存概括相关推荐

  1. Android 浅析Glide三级缓存

    Android 简要分析Glide三级缓存 概括 Glide version is 4.8.0 Glide拥有三级缓存,分别为 当前正在使用得资源缓存(ActiveResources) 内存缓存(Lr ...

  2. Hibernate二级缓存详解(转)

    Hibernate二级缓存详解(转) 本文转载 http://www.blogjava.net/supercrsky/articles/238580.html 与Session相对的是,Session ...

  3. CPU三级缓存技术解析

    CPU三级缓存技术解析 cpu存取数据 cpu存取数据大致可以认为是下图的流程(此处图比较简单) cpu拿到需要的内存地址,之后这个地址会被mmu转换成真正的物理地址,接下来会去查接下来查L1 cac ...

  4. 京东一面:Spring 为何需要三级缓存解决循环依赖,而不是二级缓存?我懵了。。...

    欢迎关注方志朋的博客,回复"666"获面试宝典 来源:cnblogs.com/semi-sub/p/13548479.html 前言 bean生命周期 三级缓存解决循环依赖 总结 ...

  5. Hibernate一级缓存

    2019独角兽企业重金招聘Python工程师标准>>> import java.io.Serializable; import org.hibernate.Session; impo ...

  6. Hibernate 所有缓存机制详解

    hibernate提供的一级缓存 hibernate是一个线程对应一个session,一个线程可以看成一个用户.也就是说session级缓存(一级缓存)只能给一个线程用,别的线程用不了,一级缓存就是和 ...

  7. Android图片三级缓存策略

    1.简介 Android缓存原理都是一样,可以自己封装. 三级缓存: 1.内存缓存:缓存在内存中,基于LRU(least recently used )算法,机器重启消失.2.本地缓存.缓存在本地中. ...

  8. paip. 提升性能---hibernate的缓存使用 总结

    paip. 提升性能---hibernate的缓存使用 总结 作者Attilax  艾龙,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blog ...

  9. Hibernate二级缓存详解

    与Session相对的是,SessionFactory也提供了相应的缓存机制.SessionFactory缓存可以依据功能和目的的不同而划分为内置缓存和外置缓存.  SessionFactory的内置 ...

最新文章

  1. 购物搜索引擎架构的变与不变——淘宝网曲琳
  2. apache-jmeter-3.1的简单压力测试使用方法(下载和安装)
  3. python有几个系列_python系列1-就业篇
  4. LINUX 常用命令集合
  5. 晒2012年度十大杰出IT博客 奖品
  6. Python之数据分析(figure图形对象、Numpy连线特殊点、图像多元布局)
  7. linux ssh远程登陆报警提醒
  8. Python处理mongo结果中的ObjectId类型为字符串
  9. 图解HTTPS协议加密解密全过程
  10. Python机器学习库——Sklearn
  11. 标准正态分布怎么算_如何使用标准正态分布表?
  12. linux硬盘修复软件,DiskGenius下载-硬盘修复软件(DiskGenius)官方版下载[电脑版]-PC下载网...
  13. mf4350d驱动下载linux,佳能MF4350d打印机驱动
  14. 叉乘点乘混合运算公式_数学公式总结人教版初一上册
  15. 大神如何用油猴提升前端开发效率 ?
  16. 戴尔_从偶像派到实力派【我身边的戴尔企业级解决方案】
  17. Volatility3内存取证工具使用详解
  18. ubuntu服务器安装可视化桌面(Gnome)
  19. 显卡驱动版本 与 cuda版本
  20. 前端的扁平化是什么意思

热门文章

  1. 桌面程序调用Web Service应用实例
  2. 阿里云rds mysql数据库数据恢复到ecs中
  3. Redis 操作数据
  4. 16 级高代 II 思考题十的多种证明
  5. 一起学微软Power BI系列-使用技巧(1)连接Oracle与Mysql数据库
  6. 屏蔽微软的SignalR
  7. CrazePony飞行器--通信部分介绍【转】
  8. Tomcat三种模式及配置APR模式
  9. FTP的主动模式和被动模式,你应该用那种?
  10. MySQL数据库-完全备份及恢复