码迷,mamicode.com
首页 > 其他好文 > 详细

Mybatis缓存

时间:2016-02-05 22:21:39      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:

   Mybaits像hibernate一样提供两种缓存机制一种是session机制的缓存,默认是以及缓存另一种是全局缓存机制,你也可以理解是SqlSessionFactory域的缓存,二级缓存你需要在mapper中加入<cache/>才能实现.其中缓存有给予自动配置也有自定义实现.

 重要缓存时POJO类需要序列化

1.二级缓存详细配置

<cache
 eviction="FIFO"//缓存算法,先入先出,此外也可以是LRC最近最少访问,SOFT软引用(根据垃圾收集器状态和删除对象的规则软引用),弱引用(更积极地根据垃圾收集器删除对象的状态弱引用和规则).
 flushInterval="60000"//多长时间刷新一次
 size="512"//缓存大小
 readOnly="true"/>

总结一句话就是:查询被缓存,增删改被更新.

2.自定义缓存.

<cache type="com.domain.something.MyCustomCache"/>

  实现接口

public interface Cache {
 String getId();
 int getSize();
 void putObject(Object key, Object value);
 Object getObject(Object key);
 boolean hasKey(Object key);
 Object removeObject(Object key);
 void clear();
}

  3.你可以具体指定某个具体的方法如何与缓存交互.

<选择…flushCache = " false " useCache = " true " / >
<插入…flushCache = " true " / >
<更新…flushCache = " true " / >
<删除…flushCache = " true " / >

 4. 共享命名空间里缓存配置

<cache-ref namespace="com.someone.application.data.SomeMapper"/>

 

 

 

  

 

Mybatis缓存

标签:

原文地址:http://www.cnblogs.com/maybo/p/5183620.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!