hibernate二级缓存
类缓存区—二级缓存的散装数据
一级缓存放的是对象的地址,
对象的散装数据:各个属性而不是一个对象
二级缓存的集合缓存{
缓存的都是集合对象的id:集合缓存区的使用需要依赖类缓存区
}
list方法会向二级缓存中存放数据,但是不会使用二级缓存中的数据(–)
iterate可以使用二级缓存,但不使用二级缓存的时候效率低,查询所有的时候会发送N+1条SQL
一级缓存的更新会同步到二级缓存中
cache属性:name设置缓存的名字–全类名
更新时间戳区:
在类缓存区会记录时间,更新数据之后,会在更新时间戳区记录,在二级缓存使用时,会比对时间戳。
查询缓存
比二级缓存功能更加强大,而且查询缓存必须依赖二级缓存
二级缓存:对类对象的缓存
查询缓存:针对类中的属性的缓存
*先配置
前提是配置二级换缓存
true
编写代码的时候
使用查询缓存
query.setCacheable(true);
反向工程
可以先创建表;然后反向创建持久化类和映射文件