美文网首页
配置shiro会话监听

配置shiro会话监听

作者: 没事遛弯 | 来源:发表于2018-01-31 09:48 被阅读0次

HttpSessionListener接口监听Session的创建和失效
spring 使用 shiro 后,由于shiro重新封装了原有的session,所以不能再使用原来的session监听方法了

  • 配置监听类
<!-- Shiro's main business-tier object for web-enabled applications -->  
    <bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">  
        <property name="realm" ref="shiroDbRealm" />  
        <property name="cacheManager" ref="shiroEhcacheManager" />  
        <property name="sessionManager" ref="sessionManager" /> <!-- 配置sessionListener -->  
    </bean>  
      
    <!-- 自定义session监听器 -->  
    <bean id="sessionManager" class="org.apache.shiro.web.session.mgt.DefaultWebSessionManager">  
        <property name="sessionListeners" ref="sessionListener1" />  
    </bean>  
    <bean id="sessionListener1" class="org.springside.examples.quickstart.service.sessionservice.SessionListener1"></bean> 
  • 在shiro的配置文件中添加启动监听类的入口
import org.apache.shiro.session.Session;  
import org.apache.shiro.session.SessionListener;  
  
public class SessionListener1 implements SessionListener {  
  
    @Override  
    public void onStart(Session session) {//会话创建触发 已进入shiro的过滤连就触发这个方法  
        // TODO Auto-generated method stub  
        System.out.println("会话创建:" + session.getId());  
    }  
  
    @Override  
    public void onStop(Session session) {//退出  
        // TODO Auto-generated method stub  
        System.out.println("退出会话:" + session.getId());  
    }  
  
    @Override  
    public void onExpiration(Session session) {//会话过期时触发  
        // TODO Auto-generated method stub  
        System.out.println("会话过期:" + session.getId());   
    }  
  
} 

如果只想监听某一个事件,可以继承SessionListenerAdapter实现

public class MySessionListener extends SessionListenerAdapter {  
    @Override  
    public void onStart(Session session) {  
        System.out.println("会话创建:" + session.getId());  
    }  
}  

相关文章

  • 配置shiro会话监听

    HttpSessionListener接口监听Session的创建和失效spring 使用 shiro 后,由于s...

  • shiro框架:sessionManager设置数据会话的存储时

    和shiro整合后,使用shiro的session管理,shiro提供sessionDao操作 会话数据。 配置s...

  • 6. Shiro会话管理

    Shiro会话管理 Shiro的会话实际和HttpSession是一致的,都是表示客户端和服务器的一次会话。 Sh...

  • AVAudioSession音频会话中断监听配置

    工作之余打个笔记。音频后台播放时需要做响应监听配置,比如电话,微信语音等 原理是,在音乐播放被中断时,暂停播放,在...

  • Apache Shiro——浅析

    1、什么是 Apache Shiro?Apache Shiro是Java安全框架,其提供认证,授权,加密,和会话管...

  • Apache Shiro反序列化识别那些事

    1.1 关于Apache Shiro Apache shiro是一个Java安全框架,提供了认证、授权、加密和会话...

  • 常见红队RCE漏洞利用小结

    Shiro: Apache Shiro是常见的Java安全框架,执行身份验证、授权、密码和会话管理。 历史维度: ...

  • Apache Shiro

    Shiro安全框架简介 什么是Shiro? Apache的强大灵活的开源框架 认证、授权、企业会话管理、安全加密 ...

  • SpringMVC整合Shiro

    摘要: SpringMVC整合Shiro,Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话...

  • Struts配置文件之web.xml

    web.xml除了用来配置过滤器外,还可以用来配置 会话时间、欢迎页、错误页、监听页、控制器等等。 web.xml...

网友评论

      本文标题:配置shiro会话监听

      本文链接:https://www.haomeiwen.com/subject/llhkzxtx.html