1、应用程序维持的内存中存放一些常用的数控叫做缓存
2、SQL缓存分类:
事务级别的缓存:
又叫做一级缓存,适用于经常被多线程修改或者删除的数据,一级缓存适用于在单线程环境中,
hibernate中的session缓存就是一级缓存
应用程序级别缓存:
又叫做二级缓存,不经常被修改,但是经常使用的数据可以放到应用程序级别的缓存中,让多
个事务共享这些数据,hibernate中的SessionFactory缓存就是二级缓存
集群级别缓存:
是指在不同的服务环境中需要操作同一数据,如果只是单独的放在自己的服务器上面就会导致
数据不同步,这是需要一个缓存服务器来处理这同步数据。(Redis)
3、在hibernate中使用二级缓存
1、选择hibernate支持的第三方缓存jar包构建到项目中
2、在hibernate配置文件中开启二级缓存
<!-- 开启二级缓存 -->
<property name="hibernate.cache.use_second_level_cache">true</property>
<!-- 指定二级缓存提供商 -->
<property name="hibernate.cache.region.factory_class">
org.hibernate.cache.ehcache.EhCacheRegionFactory</property>
3、在实体类映射文件中配置二级缓存
<cache usage="read-only|read-write"/>//必须放在id映射前面
4、配置完成
2、SQL缓存分类:
事务级别的缓存:
又叫做一级缓存,适用于经常被多线程修改或者删除的数据,一级缓存适用于在单线程环境中,
hibernate中的session缓存就是一级缓存
应用程序级别缓存:
又叫做二级缓存,不经常被修改,但是经常使用的数据可以放到应用程序级别的缓存中,让多
个事务共享这些数据,hibernate中的SessionFactory缓存就是二级缓存
集群级别缓存:
是指在不同的服务环境中需要操作同一数据,如果只是单独的放在自己的服务器上面就会导致
数据不同步,这是需要一个缓存服务器来处理这同步数据。(Redis)
3、在hibernate中使用二级缓存
1、选择hibernate支持的第三方缓存jar包构建到项目中
2、在hibernate配置文件中开启二级缓存
<!-- 开启二级缓存 -->
<property name="hibernate.cache.use_second_level_cache">true</property>
<!-- 指定二级缓存提供商 -->
<property name="hibernate.cache.region.factory_class">
org.hibernate.cache.ehcache.EhCacheRegionFactory</property>
3、在实体类映射文件中配置二级缓存
<cache usage="read-only|read-write"/>//必须放在id映射前面
4、配置完成