【登录流程图】

Client Controller SysLoginService ThreadLocal AuthManager UserDetailsService PasswordService TokenService Redis SysUserService SecurityUtils 1. POST /login {username,password} 2. login(username,password) 3. loginPreCheck() 抛出UserNotExistsException 返回错误(400) alt 用户名或密码为空 4. setContext(authenticationToken) 5. authenticate(authenticationToken) 6. loadUserByUsername 7. selectUserByUseNo() 8. validate(user) 9. getContext() 返回原始凭证 10. matchesPassword() 抛出BadCredentialsException 认证失败 抛出UserPasswordNotMatchException 返回错误(401) alt 密码不匹配 11. 返回Authentication 12. createToken(loginUser) 13. 存储LoginUser(login_tokens:uuid) 14. 返回JWT 15. clearContext() 16. 返回token 17. 响应Token(200) Client Controller SysLoginService ThreadLocal AuthManager UserDetailsService PasswordService TokenService Redis SysUserService SecurityUtils

相关推荐
weixin_460443563 小时前
2026年新修订《网络安全法》实施:Java私有化考试系统如何做好SBOM、漏洞治理与安全升级?
java·开发语言·在线考试系统·企业培训考试系统·宏远培训考试系统·国企培训考试系统·国产化培训系统
子兮曰3 小时前
把 649 种文件格式塞进一个网页里:一个「文件不出浏览器」的预览器
前端·javascript·后端
海鸥-w6 小时前
什么是AOP
java
Cc.Y6 小时前
Java零基础入门:可变字符串与包装类:StringBuilder、StringBuffer 与 通讯录管理系统实战
java·开发语言·python
paopaokaka_luck6 小时前
基于springboot+vue的智慧家政管理系统(AI问答、 WebSocket实时沟通、ECharts运营分析、订单规则与服务追踪)
java·javascript·spring boot·数据分析·echarts·mybatis
sm_926787056 小时前
RFID 标签打印的技术实现要点与二次开发实践
java·大数据·前端·c++·编辑器
阿森_dev6 小时前
2027 届毕设选题怎么选:30 个 Java 方向选题的实现难度排序
java·开发语言·spring boot·毕业设计·课程设计
Sarvartha7 小时前
Lambda 表达式和函数式接口
java·开发语言
IMPYLH7 小时前
HTML 的 <video> 元素
前端·html
计算机毕业设计杰瑞7 小时前
【计算机毕设精品】基于SpringBoot的一体化教务与学业质量管理系统的设计与实现,附源码_增删改查_java项目_可完美运行部署_网站项目
java·spring boot·课程设计