Hibernate(四)——缓存策略+lazy

本文介绍了Hibernate的一级缓存和二级缓存策略,包括Session缓存和SessionFactory缓存的工作原理及配置方法。同时,讲解了Lazy加载的概念,强调了在数据操作中的效率提升与注意事项。最后讨论了解决Lazy加载时NoSession异常的策略,如通过OpenSessionInViewFilter过滤器处理。
摘要由CSDN通过智能技术生成

          Hibernate作为和数据库数据打交道的框架,自然会设计到操作数据的效率问题,而对于一些频繁操作的数据,缓存策略就是提高其性能一种重要手段,而Hibernate框架是支持缓存的,而且支持一级和二级两种缓存,合理的使用缓存策略可以大大提高我们的操作数据效率,但是利用不能,可能会造成不必要的麻烦。


         一,一级缓存(Session缓存):


             Session缓存表示将查询结果放置到Session的临时存储空间(一级缓存中)。Hibernate框架默认支持一级缓存的。一级缓存的范围较小,一旦Session关闭,那么缓存失效。我们使用框架的各种方法,例如:get,loadsave,update,delete等都支持一级缓存的。

 

           二,二级缓存(SessionFactory缓存):


                1,概述:二级缓存其实就是将查询的数据放置在SessionFactory临时存储空间中,因为一个SessionFactory可以创建多个Session对象,所以范围比Session缓存的要大,多个Session可以共享二级缓存的数据。当然了二级缓存也不能存储大量的数据,这个要根据我们电脑配置进行设置。


                2,如何设置使用二级缓存呢?Hibernate默认是不支持二级缓存的。


                 a,首先在hibernate.cfg.xml

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值