崇之他和她

导航

day033mybatis缓存

sql标签

sql代码块可以被引用在执行标签中

<if test=pertory != null > and coloum = #{pertory}

and coloum=#{pertory} 匹配条件 只会执行第一条满足的条件

<foreach item=item collation =list

mybatis 缓存

mybatis默认一级缓存开启,一次sqlsession会话中执行同一查询多次,sql只需要执行一次,sqlsession关闭一级缓存消失,增删改会刷新缓存

全局配置文件mybatis-config.xml中开启二级缓存<setting name=useCache value=ture

接口对应的mapper.xml中使用二级缓存 此时关闭sqlsession 一级缓存的内容会存到二级缓存,可以让这个mapper中所有的查询在并发环境下,查询连接数据库次数降到很低,只要数据不变都会从二级缓存取得结果集

一级缓存对应每次sqlsession 二级缓存对应的是每个namespace

自定义mybatis缓存

mybatis-ehcache.jar 包,在mapper.xml<cache 标签中可以设置更多的策略拓展二级缓存

eternal 永久保存 timeout失效 overflowToDisk 系统宕机存到磁盘 FIFO frist in frist out 先进先出

类中可以集成AbstractEhcacheCache() 实现功能 基于implement Cache

企业都会用redis缓存

posted on 2021-02-25 19:48  崇之他和她  阅读(47)  评论(0编辑  收藏  举报