SessionDao:可以把Session存到数据库中,对session进行增删改查操作。
详解:在开发中推荐一般 继承 EnterpreiseCacheSessionDAO就可以了。
再把会话管理器注入进安全管理器当中:
<!--securityManage-->
<!-- 安全管理器 -->
<bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">
<!--注入会话管理器-->
<property name="sessionManager" ref="sessionManager" />
</bean>
我们把配置好的sessionManager 作为SecurityManager的属性进行配置。
数据表:
create table sessions (
id varchar(200),
session varchar(2000),
constraint pk_sessionsprimary key(id)
) charset=utf8 ENGINE=InnoDB;
Session Dao:
在进行Session操作时,我们需要将这个Session对象进行序列化的操作
SerializableUtils
配置完成。
会话验证调度器
实际上会在底层开一个线程,验证会话是否过期了,使用会话验证会影响性能,开发是用的不多。