Hibernate


Hibernate 中文文档

1.缓存的概念

  • 缓存是介于物理数据源和应用程序之间,是对数据库中的数据复制一份临时放在内存中的容器,其作用是为了减少程序对物理数据源的访问次数,从而提高应用程序的运行性能。Hibernate在进行读取数据的时候,根据缓存机制在相应的缓存中查询,如果在缓存中找到了需要的数据(缓存命中),则就直接把命中的数据作为结果返回,避免了大量发送SQL语句到数据库造成的性能损耗。

2.一级缓存

  • 概念:是Session(会话)级别的缓存,又称作事务缓存。Hibernate内置的,不能卸除。
  • 缓存范围:缓存只能被当前Session对象访问。缓存的生命周期依赖于Session的生命周期,Session关闭了缓存也就被清除了。

3.二级缓存

  • 概念:是SessionFactory级别的缓存,也称作为应用级别缓存。提供缓存抽象,由供应商具体实现。
  • 缓存范围:缓存被应用范围内所有的Session共享。这些Session有可能是并发访问缓存。缓存的生命周期依赖于应用程序的生命周期。
  • 二级缓存提供商:通过在hibernate.cache.provider_class属性中指定org.hibernate.cache.CacheProvider的某个实现的类名。
  • 注意:Hibernate打包一了些开源缓存实现,并提供对它们的内置支持(见下表)。除此之外,你也可以实现你自己的缓存,将它们插入到系统中。
缓存供应商供应商实现类类型集群安全
Hashtable (仅用于测试)HashtableCacheProvider内存/
EHCacheEhCacheProvider内存/硬盘/
OSCacheOSCacheProvider内存/硬盘/
SwarmCacheSwarmCacheProvider集群
JBoss TreeCacheTreeCacheProvider集群
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值