学习笔记:黑马程序员JavaWeb开发教程(2025.4.6)

12.4 登录校验-JWT令牌-介绍

JWT(JSON Web Token)

简洁是指JWT是一个简单字符串,自包含指的是JWT令牌,看似是一个随机字符串,但是可以根据需要,自定义存储内容

Header是JSON数据格式,原始JSON变成字符串,需要经过base64编码

数字签名确定安全可靠

一二部分都进行base64编码,三是签名算法

12.7 登录校验-JET令牌-生成和校验

先引入依赖,调用api

链式编程,第一个是设置签名算法和密钥;compact方法拿到字符串类型的返回值

基于Java解析JWT,直接调用Jwts.parser,第一个方法设置密钥;第二个方法传递JWT;第三个方法返回拿到自定义内容,是到claims里面

令牌错误过期都会抛出异常

注意点

12.8 登录校验-JWT令牌-登录后下发令牌

username = #{username},当传入的是一个对象,可以直接用对象里面的属性名,但是#{}里面的值必须与传入的参数一致

在 MyBatis 中,静态方法(static 方法)不能直接使用 @Select 等注解

数据库字段拼接的时候要注意有空格,要不然会拼接到一起

相关推荐
yaoxin5211233 分钟前
397. Java 文件操作基础 - 创建常规文件与临时文件
java·开发语言·python
努力努力再努力FFF1 小时前
医生对AI辅助诊断感兴趣,作为临床人员该怎么了解和学习?
人工智能·学习
OBiO20132 小时前
Cell | 突破AAV载体容量限制!路中华/姜玉武/刘太安团队开发AAVLINK系统实现大基因递送
笔记
极客先躯2 小时前
高级java每日一道面试题-2025年11月24日-容器与虚拟化题[Dockerj]-runc 的作用是什么?
java·oci 的命令行工具·最小可用·无守护进程·完全标准·创建容器的核心流程·runc 核心职责思维导图
用户60648767188962 小时前
AI 抢不走的技能:用 Claude API 构建自动化工作流实战
java
我命由我123452 小时前
Kotlin 开发 - lateinit 关键字
android·java·开发语言·kotlin·android studio·android-studio·android runtime
aXin_ya2 小时前
微服务第八天 Sentinel 四种分布式事务模式
java·数据库·微服务
智者知已应修善业2 小时前
【51单片机2个按键控制流水灯运行与暂停】2023-9-6
c++·经验分享·笔记·算法·51单片机
Halo_tjn2 小时前
Java Set集合相关知识点
java·开发语言·算法
Linsk3 小时前
Java和JavaScript的关系真是雷峰和雷峰塔的关系吗?
java·javascript·oracle