MyBatis 缓存

//SqlSessionFactoryBuilde用一次就好,主要来生成SqlSessionFactory
SqlSessionFactory = SqlSessionFactoryBuilder().build(Resources.getResourceAsReader(a.xml));
//SqlSessionFactory 一旦创建,一直存在
SqlSession session = sqlSessionFactory.openSession();
//SqlSession 每个线程都有自己的Sqlsession实例。应该和http作用域保持一致
BlogMapper mapper = session.getMapper(BlogMapper.class);
//调用方法的时候启用,方法调用结束,销毁。

mapper.selectBlog(101);

Mybatis 以及缓存默认开启,无法控制,每一个Sqlsession 有一个一级缓存。mapper.xml 中可以配置flushCache 清空缓存。但是这样会清空所有的缓存影响速度。
Mybatis 二级缓存:

<settings>
    <setting name = "cacheEnabled" value = "true">
</settings>

Mybatis 默认配置文件全局二级缓存默认开启,
Mapper.xml 中配置cache元素

<cache
    eviction(回收策略)
        LRU:最近使用最少
        FIFO:先进先出
        SOFT:软引用,移除基于垃圾回收器状态的软引用规则对象
        WEAK:弱应用:更积极的移除基于垃圾收集器状态的弱引用规则对象。
    flushInterval(刷新间隔):正整数,代表毫秒默认情况不设置,缓存仅在调用语句时候刷新
    size:引用数目。默认值1024
    readOnly:默认为false,返回缓存对象的拷贝安全。

在接口上使用@CacheNamespace开启二级缓存。

参照缓存cache-ref,@cacheNamespaceRef()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值