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接口並實現所有方法

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