Spring 中组合模式的运用举例
组合模式在 Spring 中的应用:组合缓存管理器 CompositeCacheManager。
CompositeCacheManager 自己实现了 CacheManager,并将多个 CacheManager 组合到成员变量中,一般用于对多个缓存进行合并,按照同一个缓存方式进行处理。
public class CompositeCacheManager implements CacheManager, InitializingBean {
private final List<CacheManager> cacheManagers = new ArrayList<>();
private boolean fallbackToNoOpCache = false;
/**
* Construct an empty CompositeCacheManager, with delegate CacheManagers to
* be added via the {@link #setCacheManagers "cacheManagers"} property.
*/
public CompositeCacheManager() {
}
}
如上所述,这就是 Spring 运用组合模式的一个简单实现。