通用组件的缓存处理

一般开发一个通用的组件最起码要兼顾cs和bs程序,拿我现在做的一个通用权限访问控制组件来说,等客户登录成功的时候,根据用户到持久层取出此用户对应的权限集合-一个List<Permission>,然后需要放到一个缓存中中,在web应用中我把它放到Session中,但是我的通用组件的代码不能出现对web api的依赖啊,CS程序的话难道自己设一个全局静态变量?

另外robbin大大层说一般Session里面出了用户登录信息最好什么都不好放,这样一来更不知道怎么办了.采用客户端缓存?采用通用的缓存?前者的问题在于安全无法保障,后者无疑是一个好办法,但是这样是否又会产生对于缓存层的依赖呢?

我在想写一个ActionHolder类,把从数据库取出的权限资源列表存在这个类对象的变量中,然后通过Getter-Setter方法来实现读写.因为是全局性的,所以需要对象为单态,又因为针对不同类型的程序需要有不同的实现,所以要声明成interface或者abstract class.但是如果声明成一个interface的话我如何来强制实现此接口的类必须是单态呢?

你可能感兴趣的:(Web)