永发信息网

shiro怎么获取sessionmanager

答案:2  悬赏:20  手机版
解决时间 2021-01-04 22:40
shiro怎么获取sessionmanager
最佳答案
SessionManager是在应用程序中为所有Subject提供Session的管理,包括创建,删除,失效及验证等。同其的核心组件一样,SessionManager 也是一个由SecurityManager 维护的顶级组件。
在Shiro中默认提供了一个SessionManager的实现DefaultSessionManager。DefaultSessionManager 提供一个应用程序所需的所有企业级会话管理。可以在任何应用程序中使用。
如果想自定义一个SessionManager,可在Shiro.ini中配置。例如:

[main]

sessionManager = com.foo.my.SessionManagerImplementation
securityManager.sessionManager = $sessionManager

在系统中SessionManager 可以通过JavaBean 风格的getter/setter 方法获取或设置(getSessionManager()/setSessionManager())。
全部回答
技术分析: 1、首先如果登录成功,shiro的defaultwebsessionmanager会默认通过如下方式添加jsessionid cookie到响应: 查看复制到剪贴板打印 private void storesessionid(serializable currentid, httpservletrequest request, httpservletresponse response) { if (currentid == null) { string msg = "sessionid cannot be null when persisting for subsequent requests."; throw new illegalargumentexception(msg); } cookie template = getsessionidcookie(); //此处得到jsessionid的一个cookie模板 cookie cookie = new simplecookie(template); string idstring = currentid.tostring(); cookie.setvalue(idstring); cookie.saveto(request, response); log.trace("set session id cookie for session with id {}", idstring); } 2、如果客户端访问时会带着个cookie回来;但是注意:容器不认识的(web容器并没有真正创建httpsession);shiro默认情况下会生成自己的一套session,默认是memorysessiondao;即放到内存中的;和web容器没有任何关系; 3、 接着访问一个错误的页面(如jsp);此时到了shiro过滤器,过滤器通过;然后最后forward到这个错误页面;大家应该知道默认情况下jsp页面是需要session的;所以此时jsp会调用request.getsession() 此时创建了一个session;这会往cookie写jsessionid的;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
一列数字映在镜子里的像如图,这列数字是A.95
换了新电脑,风暴英雄打开出现问题,游戏界面
名人名言不要超过六个字
单选题下列关于卤族元素的比较中,错误的是A.
影响自然灾害危害程度地域差异的因素是①社会
单选题控制噪声是城市环保的主要项目之一,下
如图所示,一根固定的通有电流I1的长直导线跟
原来如此日语怎么说
单选题UncleWangisanoldfriend________.A.
饿了么送一单多少钱?自由时间还是固定时间
单选题某企业根据农民想用洗衣机洗土豆的要求
单选题学生小林生活在十分宽裕的家庭环境中,
单选题16世纪,荷兰独立后处于领先地位的手工
如何运营好一个社团微信公共号呢?
退火车票注意事宜
推荐资讯
阳台该不该装柜子,看完后,你是不是有些后悔
怎么挑选乒乓球拍
单选题Thinkofaplace_________wecangofor
Few men shopping with their wives at home
学府大道/学府西七路(路口)地址有知道的么?
居然什么意思
成语果实累累是什么
现在从广州坐汽车到揭阳要多久,票价是多少?
高铁酸钾(K2FeO4)是一种新型、高效的多功能
He was so foolish him about it.A. to tell
(1)如图甲,在△ABC中,AB=AC,AD平分∠BAC
时序逻辑电路的特点是什么? 10分
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?