当前位置: 首页 > wzjs >正文

中国联通网站备案管理系统邯郸营销网站建设公司

中国联通网站备案管理系统,邯郸营销网站建设公司,自己做淘宝客网站,站长之家字体✨✨✨这里是秋刀鱼不做梦的BLOG ✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSDN博客 目录 一、JJWT 是什么? 二。基本使用 (1)引入依赖 (2)生成密钥(使用HS256 签名) &#xff08…

✨✨✨这里是秋刀鱼不做梦的BLOG

✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSDN博客

目录

一、JJWT 是什么?

二。基本使用

        (1)引入依赖

        (2)生成密钥(使用HS256 签名)

        (3)封装 JWT 工具类

三、使用示例


一、JJWT 是什么?

        JJWT 是一个用于在 Java 项目中生成和验证 JSON Web Token(JWT)的库,它由 io.jsonwebtoken 提供,简单易用,支持多种加密算法,如 HS256、RS256 等,JWT 常用于用户认证、接口鉴权、信息传递等场景。

二。基本使用

        (1)引入依赖

——首先先引入JJWT所需的依赖

<!-- 核心API -->
<dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt-api</artifactId><version>0.11.5</version>
</dependency><!-- 底层实现包 -->
<dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt-impl</artifactId><version>0.11.5</version><scope>runtime</scope>
</dependency><!-- JSON 处理工具,使用 Jackson -->
<dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt-jackson</artifactId> <!-- jjwt-gson 也可以 --><version>0.11.5</version><scope>runtime</scope>
</dependency>

        (2)生成密钥(使用HS256 签名)

——在测试方法中或随便一个main方法中生成一共密钥用户后续使用

// 生成安全的随机密钥
Key key = Keys.secretKeyFor(SignatureAlgorithm.HS256);// 将密钥编码成 Base64 字符串(用于配置文件等)
String base64Key = Encoders.BASE64.encode(key.getEncoded());
System.out.println("Base64 密钥:" + base64Key);

        (3)封装 JWT 工具类

——通常我们会将JWT封装为一共工具类,其中包含 token 的生成和解析方法

public class JWTUtil {// 秘钥字符串(从配置文件中获取较安全)private static final String SECRET_STRING = Constants.USER_LOGIN_KEY;// 转换为 key 对象private static final Key key = Keys.hmacShaKeyFor(SECRET_STRING.getBytes(StandardCharsets.UTF_8));// 生成 token,传入自定义的 claims(如用户名、角色等)public static String getKey(Map<String, Object> claims) {return Jwts.builder().setClaims(claims)         // 设置自定义内容.signWith(key)             // 设置签名密钥.compact();                // 生成字符串}// 解析 token,返回 Claims 对象(包含所有自定义信息)public static Claims parseToken(String token) {return Jwts.parserBuilder().setSigningKey(key)        // 设置签名密钥.build().parseClaimsJws(token)     // 解析 token.getBody();                // 获取 Claims 部分}
}

三、使用示例

——以下为一个使用案例

public class TestJWT {public static void main(String[] args) {// 准备用户信息Map<String, Object> userInfo = new HashMap<>();userInfo.put("username", "zhangsan");userInfo.put("role", "admin");// 生成 tokenString token = JWTUtil.getKey(userInfo);System.out.println("生成的 JWT:" + token);// 解析 tokenClaims claims = JWTUtil.parseToken(token);System.out.println("解析出的用户信息:");System.out.println("用户名:" + claims.get("username"));System.out.println("角色:" + claims.get("role"));}
}


以上就是本篇文章的全部内容了~~~


文章转载自:

http://LZshbiu5.nnrqg.cn
http://ZNmNR6hx.nnrqg.cn
http://JptvlRpR.nnrqg.cn
http://1C0HXeNO.nnrqg.cn
http://Ud0ca6qI.nnrqg.cn
http://CgFXFvtp.nnrqg.cn
http://jzexZKH5.nnrqg.cn
http://Ybr6sH9i.nnrqg.cn
http://gioMOsf2.nnrqg.cn
http://RvScM1sb.nnrqg.cn
http://d5f6WA3p.nnrqg.cn
http://BhnRrvbp.nnrqg.cn
http://Rq3PLNGR.nnrqg.cn
http://iBMmhlos.nnrqg.cn
http://ITQYsH0y.nnrqg.cn
http://zIvnFEpq.nnrqg.cn
http://m1O927fa.nnrqg.cn
http://fYTgyWjD.nnrqg.cn
http://sJcX0Vy1.nnrqg.cn
http://sVzsnHcP.nnrqg.cn
http://rqcBIGjJ.nnrqg.cn
http://E5xBq81l.nnrqg.cn
http://RyAMBdTm.nnrqg.cn
http://9MNpLC8s.nnrqg.cn
http://KRME18Hl.nnrqg.cn
http://znqxSlaP.nnrqg.cn
http://fCA6vRjB.nnrqg.cn
http://dmGYMXwj.nnrqg.cn
http://kXexpb6i.nnrqg.cn
http://YOrgQMqI.nnrqg.cn
http://www.dtcms.com/wzjs/747200.html

相关文章:

  • 重庆网站建设近重庆零臻科技wordpress短代码引入小工具
  • 美容院网站制作网站站长
  • 网站建设与维护相关知识设计必知的设计网站 039
  • 做展厅的网站seo怎么做网站内容
  • 深圳模板建站多少钱艺术网站建设公司
  • 网站建设与管理专业电子上网站开发
  • wordpress 多个站点广东微信网站制作价格
  • 网站登录页面怎么做安化网站建设
  • 东莞哪些网络公司做网站比较好网站主色调简介
  • 网站 wap 插件个人网站免费推广
  • 左右左布局网站建设拉销智能模板建站系统
  • 站长收录查询网页制作模板素材免费
  • 重庆网站建设子沃科技熊掌号dw做的网站如何上传图片
  • 广州科 外贸网站建设亚马逊的免费网站
  • 南宁论坛建站模板宁夏建设工程造价信息网
  • 做网站虚拟主机推荐做论坛网站时应该注意什么
  • 哪里做网站优化品牌注册名字大全
  • 网站维护哪些wordpress登录跳转
  • 苏州网络网站建设怎么制作视频网站
  • 校园网站建设途径destoon 网站后台显示不出模板
  • 保山市城市建设网站dw怎么把设计网页显示出来
  • 饿了么网站做要多少钱德州做网站
  • 建设网站定位分析辽宁专业网站建设大全
  • 如何进入公司网站后台wordpress 单栏
  • 朋友圈网站广告怎么做小程序开发专业定制
  • 昆明建设银行纪念币预约网站今天新闻
  • 顺德网站开发招聘怀化seo公司
  • 像素人物制作网站wordpress音乐美化
  • 中山网站建设哪家便宜商品网站怎么做
  • 在线网站制作类似于建设通的网站