今天在配置Shiro的过期时间的时候,发现整合了Ehcache的缓存,但是Ehcache的缓存又不生效,无语了
最开始参考网上的方法,配置了eternal="false",也设置了timeToIdleSeconds和timeToLiveSeconds的值,但是一直没有没有生效,没到半小时就自动登录失效了。原来的配置如下:
再看了很多博客后,发现用力错地方~ 并且,解决办法及其简单。。。。
第一步,添加DefaultWebSessionManager
<bean id="sessionManager" class="org.apache.shiro.web.session.mgt.DefaultWebSessionManager">
<property name="sessionValidationSchedulerEnabled" value="true" />
<property name="sessionIdCookieEnabled" value="true" />
<property name="globalSessionTimeout" value="6000" />
</bean>
我为了测试只设置了6秒 单位为毫秒
第二步,在DefaultWebSecurityManager中引用
<bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">
......
<property name="sessionManager" ref="sessionManager" />
......
</bean>
完成~
作者:彼岸舞
时间:2021\07\08
内容关于:工作中用到的小技术
本文属于作者原创,未经允许,禁止转发