CachingSecurityManager抽象类

CachingSecurityManager抽象类实现了SecurityManager,Destroyable,CacheManagerAware这三个接口,先对此进行解析:

1.SecurityManager接口

此接口包含了对subject的操作,以及认证,授权,会话管理,此内容在SecurityManager源码解析中有解释。

2.Destroyable接口

2.1.注销方法

void destroy() throws Exception;

3.CacheManagerAware接口

3.1.设置缓存管理器

void setCacheManager(CacheManager cacheManager);

4.CachingSecurityManager抽象类

4.1.静态数据

扫描二维码关注公众号,回复: 279080 查看本文章

private CacheManager cacheManager;//缓存管理器

4.2.构造方法

public CachingSecurityManager() {}

4.3.获取缓存管理器

public CacheManager getCacheManager() {return cacheManager;}

4.4.设置缓存管理器(覆盖了CacheManagerAware中定义的方法,设置cacheManager,并调用了之后调用的方法afterCacheManagerSet())

public void setCacheManager(CacheManager cacheManager) {
        this.cacheManager = cacheManager;
        afterCacheManagerSet();
    }

4.5.设置缓存管理器之后调用的方法(protected方法,内部使用)

protected void afterCacheManagerSet() {}

4.6.注销方法(生命周期注销完缓存管理器,并将缓存管理器设置为空)

public void destroy() {
        LifecycleUtils.destroy(getCacheManager());
        this.cacheManager = null;
    }

猜你喜欢

转载自yansxjl.iteye.com/blog/2333928