shiro SessionDao不设置CacheManager也可以使用缓存的一个问题
2016-09-08 14:21
417 查看
发现配置SessionDao的时候不设置CacheManager也可以使用缓存
但是你如果在securityManager中设置了SessionManager
它会调用afterSessionManagerSet()方法,然后又会调用applyCacheManagerToSessionManager()方法
applyCacheManagerToSessionManager会把CacheManager设置到SessionManager中,SessionManager又会把CacheManager设置到SessionDao..
他们都实现了CacheManagerAware接口。
但是你如果在securityManager中设置了SessionManager
public void setSessionManager(SessionManager sessionManager) { this.sessionManager = sessionManager; this.afterSessionManagerSet(); }
它会调用afterSessionManagerSet()方法,然后又会调用applyCacheManagerToSessionManager()方法
protected void afterSessionManagerSet() { this.applyCacheManagerToSessionManager(); this.applyEventBusToSessionManager(); }
protected void applyCacheManagerToSessionManager() { if(this.sessionManager instanceof CacheManagerAware) { ((CacheManagerAware)this.sessionManager).setCacheManager(this.getCacheManager()); } }
applyCacheManagerToSessionManager会把CacheManager设置到SessionManager中,SessionManager又会把CacheManager设置到SessionDao..
他们都实现了CacheManagerAware接口。
相关文章推荐
- 只有一个公网IP也可以使用LVS的DR模式!(外带php session粘滞问题解决)
- 只有一个公网IP也可以使用LVS的DR模式!(外带php session粘滞问题解决)
- 使用filter验证session用户和页面缓存问题处理
- 使用Volley来写一个List列表(Valley可以解决很大一部分android请求server的问题)
- 在JIRA的一个项目中,如何设置让项目中的问题可以设置不同的权限让不同的人看到。
- Shiro 缓存失效以后的一个问题
- 使用AjaxPro与Session交互时遇到一个问题
- 使用Ajax.net遇到的问题-使用会话时提示错误"只有在配置文件或 Page 指令中将启用会话状态设置为真时,才可以使用会话状态
- unserialize的这个问题是由一个emlog论坛用户在使用时报错而发现的 问题表现情况如下: emlog缓存的保存方式是将php的数据对象(数组)序列化(serialize)后以文件的形式存放,
- 设计算法并写出代码移除字符串中重复的字符,不能使用额外的缓存空间。注意: 可以使用额外的一个或两个变量,但不允许额外再开一个数组拷贝。
- Golang web 开发实战之 session 缓存:如何使用 redigo 将一个结构体数据保存到 redis?
- 数据库SQL中的分钟表示应该使用MI(非常重要的一个问题,以前一直认为和java中一样,用mm就可以表示);校对规则(查询时区分大小写)
- android中,如果使用imageButton可以在drawable 中设置一个selector,但是imageView设置不起作用
- B2C外贸网站产品设计和功能需求,一个产品设置了在多个类别里面都可以看到,以及Email模板问题
- nginx+tomcat反向代理下使用tomcat-redis-session-manager进行session共享中值得注意的一个问题
- 使用OpenSessionInViewFilter解决lazy failed问题时的一个现象
- 使用wordpress时遇到的一个奇怪的问题:把页面设置为首页之后分页失效
- JAVA Web 安全机制----使用filter验证session用户和页面缓存问题处理
- 使用session时候,遇到的一个问题(请求解决方法)
- 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为(转)