CreateSubject------方法六saveSubject(创建session关键)

本文深入探讨了Shiro框架中的Session管理机制,包括DefaultSecurityManager的SubjectDao如何自定义,以及Session创建、更新和删除的详细流程。通过具体场景分析,如session为空时的创建与更新,session存在时的条件判断与信息同步,揭示了Shiro在身份验证和会话管理方面的核心实现。

开始储存subject

1、调用的是DefaultSecurityManager

中的SybjectDao:

该对象可以自定定义,

重复判断有没有session,有没有个人信息,有放入更新session

创建sesion的关键:

身份信息:

currenexistIngPrincipal:当前subject的身份信息

existIngPrincipal:session中存的身份信息

1、

session为空,currentPrincipal不为空,创建session---更新

2、

session不为空,判断currentPrincipal是否为空,

空,判断existIngPrincipal为不为空则删除

不为空,则判断两个信息是否相同,------------更新

创建session:

new simpleSession---自定义的

sessionid为uuid

设置会话时间:

然后又去更新缓存session

创建cookie,给他设置sessionid

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值