1、什么事缓存。
缓存是数据库数据在内存中的临时容器,包含了库表数据在内存中的复制件,一般位于物理数据库系统与数据访问层组件之间
2、缓存的作用
缓存介于应用程序和物理数据源之间,其作用是为了降低应用程序对数据源访问的次数,提高系统性能,特别是查询性能
缓存的介质一般是内容,多以速度较快
3、应用系统中的持久层缓存范围
(1)、事务级缓存
只能被当前事务访问,以来当前事务的生命周期,介质是内存,hibernate中的一级缓存就是事务缓存,必须的,不可卸载的
(2)、应用级缓存
应用范围内所有的事务共享,有可能以并发的形式访问缓存,因此必须对缓存采取隔离机制,以来于应用的生命周期,hibernate中的二级缓存就是属于应用缓存的
(3)、分布式缓存
集群环境中,缓存被一个主机或多个主机中的进程多共享,缓存中的数据被复制到集群中每个进程节点,一般由第三方缓存提供商实现
4、hibernate缓存中提供的缓存实现
(1)、一级缓存 session缓存 生命周期短,因此需要二级缓存
(2)、二级缓存 sessionfactory缓存
(3)、查询缓存
5、hibernate实现二级缓存的过程
1)获得满足查询条件的数据
2)讲获得数据根据id放入二级缓存中
3)以后再次查询时,现在session一级缓存中查询,如果没有查到就到二级缓存中查询,如果还没有就到数据库中查询,并且把查询结果放在二级缓存中
4)档应用系统对缓存中相关数据进行修改时,hibernate也会同时修改缓存中的数据