首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从MyBatis缓存中删除特定的选择id数据

从MyBatis缓存中删除特定的选择id数据
EN

Stack Overflow用户
提问于 2016-02-15 10:03:53
回答 1查看 808关注 0票数 2
代码语言:javascript
复制
<mapper namespace="src.main.domain.EqMapper">
    <cache eviction="FIFO" size="512" readOnly="true"/>

    <select id="getStoreIdAndEqId" resultType="String" flushCache="false" useCache="true">
        select count(author) from blog
    </select>
    <select id="getWholeData" resultType="java.util.LinkedHashMap" flushCache="false" useCache="true">
        select * from blog
    </select>
</mapper>

Configuration configuration = MyBatisUtil.getSqlSessionFactory().getConfiguration(); 
Collection<Cache> caches = configuration.getCaches(); 
for (Cache cache : caches) { 
    Lock w = cache.getReadWriteLock().writeLock(); 
    w.lock(); 
    try { 
        cache.clear(); 
    } finally { 
        w.unlock(); 
    } 
} 

上述缓存逻辑清除所有缓存。是否可以清除特定的缓存?我想删除getStoreIdAndEqId缓存,而不是getWholeData缓存。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-15 12:45:57

试试这个:

代码语言:javascript
复制
<select id="getStoreIdAndEqId" resultType="String" flushCache="true" useCache="false">
     select count(author) from blog
</select>
<select id="getWholeData" resultType="java.util.LinkedHashMap" flushCache="false" useCache="true">
     select * from blog
</select>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35406402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档