Mybatis缓存
缓存技术是一种“以空间换取时间”的设计理念。Mybatis默认情况下是没有开启缓存的,除了局部的session缓存外。要开启二级缓存,你需要在sql映射文件中添加如下的内容:
<cache eviction=”FIFO” flushInterval=”60000” size=”512” readOnly=”true” />
这个配置创建了一个FIFO缓存,每隔60秒刷新,存取512个结果对象或列表的引用,而且返回的对象为只读,因此在不同线程中的调用者之间修改他们会导致冲突。
可以用的收回策略:
LRU:最近最少使用的,移除最长时间不被使用的对象。
FIFO:先进先出,按对象进入缓存的顺序来移除它。
SOFT:软引用,移除基于垃圾回收器状态或软引用规则的对象。
WEAK:弱引用,更积极的移除基于垃圾回收器和弱引用规则的对象。
Mybatis简化了编码,实现了接口的绑定。使用更加的方便。如不需要写dao的实现类,直接写个接口,再写个配置文件,整个mybatis就配置好了。
MyBatis采用功能强大的基于OGNL的表达式来消除其他元素。MyBatis采用OGNL表达式简化了配置文件的复杂性,使用起来更简洁。
对象关系映射的改进,效率更高。
Mybatis全局配置文件
Mybatis的sqlmap: