Mybatis技术内幕读书笔记(五)cache模块

My Batis 中缓存模块相关的代码位于cache 包下, 其中Cache 接口是缓存模块中最核心的接口,它定义了所有缓存的基本行为。Cache 接口的定义如下:

PerpetualCache:

PerpetualCache 在缓存模块中扮演着ConcreteComponen t 的角色,其实现比较简单,底层使用HashMap 记录缓存项,也是通过该HashMap 对象的方法实现的Cache 接口中定义的相应方法。PerpetualCache 的具体实现如下:

下面来介绍cache.decorators 包下提供的装饰器,它们都直接实现了Cache 接口,扮演着ConcreteDecorator 的角色。这些装饰器会在PerpetualCache 的基础上提供一些额外的功能,通过多个组合后满足一个特定的需求,后面介绍二级缓存时,会见到这些装饰器是如何完成动态组合的。

猜你喜欢

转载自blog.csdn.net/qq_36642340/article/details/81513248