Shiro会话管理知识以及使用

概述

用户访问应用时保持的连接关系,在多次交互中应用能够识别出当前访问的用户是谁,且可以在多次交互中保存一些数据,当主体成功login后就会创建一个会话

会话管理器

概述: 会话管理器管理着应用中所有 Subject的会话的创建、维护、删除、失效、验证等工作

shiro 提供了三个默认实现

  • DefaultSessionManager:适合用于 JavaSE 环境
  • ServletContainerSessionManager:适用于 Web 环境,其直接使用 Servlet 容器的会话,也就是Shiro会话直接是容器的会话,在容器会话添加属性等于在Shiro会话添加属性
  • DefaultWebSessionManager:适用于 Web 环境的实现,可以替代 ServletContainerSessionManager,自己维护着会话,直接废弃了 Servlet 容器的会话管理,不适用Servlet容器的会话作为Shiro的会话

会话监听器

概述: 会话监听器用于监听会话创建、过期及停止事件,通常实现SessionListener或继承SessionListenerAdapter类

自定义SessionDao

概述:在Shiro中Session的储存默认根据使用的SecurityManager来决定,但我们也可以将其自定义,通常实现持久化

实现:通常我们直接继承AbstractSessionDAO或实现SessionDao接口并实现所有方法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章