文章目录

  • 1. 坐标依赖
  • 2. 代码

1. 坐标依赖

<dependencies><!-- jwt 认证--><dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>0.6.0</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version></dependency></dependencies>

2. 代码

package com.sunmone.test;import io.jsonwebtoken.Claims;
import io.jsonwebtoken.JwtBuilder;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.SignatureAlgorithm;
import org.junit.Test;import java.util.Date;public class TestJwt {/*** 创建令牌*/@Testpublic void CreatToken() {// 创建令牌JwtBuilder jwt = Jwts.builder().signWith(SignatureAlgorithm.HS256, "sunmone") // JWT头部,加密算法为HS256,盐是 sunmone (自定义)// 载荷部分 标准.setId("123456") // jti: jwt的唯一身份标识,主要用来作为一次性token,从而回避重放攻击.setSubject("tom") // sub: jwt所面向的用户.setIssuer("Jack") // iss: jwt签发者.setIssuedAt(new Date()) // iat: jwt的签发时间.setExpiration(new Date(System.currentTimeMillis() + (1000 * 60)))// exp: jwt的过期时间 一分钟// 载荷部分 自定义.claim("name","Rose").claim("admin",true);// 使用 compact 方法生成 TokenString token = jwt.compact();// 输出 tokenSystem.out.println(token);}/*** 解析令牌*/@Testpublic void AnalysisToken(){// 复制上面创建的令牌 如果token超过有效期,那么解析会报错String token = "eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxMjM0NTYiLCJzdWIiOiJ0b20iLCJpc3MiOiJKYWNrIiwiaWF0IjoxNjUzNjQ3NDAyLCJleHAiOjE2NTM2NDc0NjIsIm5hbWUiOiJSb3NlIiwiYWRtaW4iOnRydWV9.CDzUuBtCJqdvrrC8ui2C36Wkeif3fyTTFFfZ370ROfM";// setSigningKey("sunmone") 把盐告知jwt , parseClaimsJws(token) 再把生成的token告知 就可以解密了Claims claims = Jwts.parser().setSigningKey("sunmone").parseClaimsJws(token).getBody();// 输出解析后的tokenSystem.out.println("jti :" + claims.getId()); // 唯一身份标识System.out.println("sub :" + claims.getSubject()); // 用户名高System.out.println("iss :" + claims.getIssuer()); // 签发者System.out.println("iat :" + claims.getIssuedAt().toLocaleString()); // 签发时间System.out.println("exp :" + claims.getExpiration().toLocaleString()); // 过期时间// 输出自定义部分载荷System.out.println("name :" + claims.get("name"));System.out.println("admin :" + claims.get("admin"));}
}

Java-Maven使用jwtt验证相关推荐

  1. php榛子云短信验证,java + maven +榛子云短信 实现发送短信验证码功能

    如何使用java + maven的项目环境发送短信验证码,本文使用的是榛子云短信的接口. 下载下来是jar文件,需要将jar发布到本地的maven仓库中, 在cmd环境下输入: mvn install ...

  2. php注册榛子云短信验证,java + maven +榛子云短信 实现发送短信验证码功能

    如何使用java + maven的项目环境发送短信验证码,本文使用的是榛子云短信的接口. 下载下来是jar文件,需要将jar发布到本地的maven仓库中, 在cmd环境下输入: mvn install ...

  3. HIDL示例-JAVA服务创建-Client验证-Android10.0 HwBinder通信原理(四)

    摘要:本节主要来讲解Android10.0 JAVA层的HIDL服务创建和JAVA层的Client验证 阅读本文大约需要花费15分钟. 文章首发微信公众号:IngresGe 专注于Android系统级 ...

  4. java maven 项目依赖管理 简介

    目录 一.简单的小问题? 二.maven到底是什么? 三.maven的安装 四.仓库的概念 五.使用命令行管理maven项目 六.使用Myeclipse创建maven自定义项目 七.pom.xml的依 ...

  5. Java Maven学习 - 1

    Maven 具有约定的标准目录结构,如下: 目录    目的 ${basedir}    存放pom.xml和所有的子目录 ${basedir}/src/main/java    项目的java源代码 ...

  6. java 钉钉获取用户信息,JAVA maven项目如何使用钉钉SDK来获取token、用户

    JAVA maven项目如何使用钉钉SDK来获取token.用户 发布时间:2020-07-17 10:52:32 来源:亿速云 阅读:102 作者:小猪 这篇文章主要为大家展示了JAVA maven ...

  7. java + maven 实现发送短信验证码功能

    如何使用java + maven的项目环境发送短信验证码,本文使用的是榛子云短信 的接口. 1. 安装sdk 下载地址: http://smsow.zhenzikj.com/doc/sdk.html ...

  8. 两步验证杀手锏:Java 接入 Google 身份验证器实战

    转载自   两步验证杀手锏:Java 接入 Google 身份验证器实战 什么是两步验证? 大家应该对两步验证都熟悉吧?如苹果有自带的两步验证策略,防止用户账号密码被盗而锁定手机进行敲诈,这种例子屡见 ...

  9. 针对Java中的XSD验证XML

    有许多工具可用于根据XSD 验证XML文档 . 其中包括操作系统脚本和工具,例如xmllint ,XML编辑器和IDE,甚至是在线验证器. 由于前面提到的方法的局限性或问题,我发现拥有自己的易于使用的 ...

  10. java mac jconsole_解决java maven项目找不到jconsole-1.8.0.jar和tools-1.8.0.jar包问题

    今天遇到了这样一种情况,自己的maven项目中并没有引用的jar包出现在了Maven Dependencies的依赖包中.而我在pom.xml自己没有没有引入啊. 图示 怀疑是自己的alibaba 的 ...

最新文章

  1. 前端的小玩意(5)——用dojo写的二级下拉菜单自动添加功能
  2. 如何自动将AI Studio中的GIF文件上载到CSDN?
  3. python实现名片管理系统在哪里_python实现名片管理系统项目
  4. 背景图层和普通图层的区别_新手如何在PS中创建图层?不容错过的7种方法,你值得学习...
  5. Bootstrap3 价格滑动块 price range bootstrap-slider
  6. java package 目录_修改jar包package目录结构操作方法
  7. Oracle、DB2、SQLSERVER、Mysql、Access分页SQL语句梳理
  8. java课程设计-简单学生签到系统-桌面小程序的实现
  9. 汇编语言程序设计(一)
  10. SAP系统环境整体架构设计总结
  11. 火车头采集html5游戏,火车头采集网站内页URL(图文)教程!
  12. CDlinux 安装
  13. 二进制部署多master节点的k8s集群-1.20以上稳定版本
  14. 神棍节前夕,沃商店迎来1岁生日
  15. java基础—java由来
  16. iPhone手机ipa破解补丁安装方法和ipa软件游戏安装教程(1)
  17. date函数详细用法
  18. 【YOLO】YOLO简介
  19. 转:人最大的教养,是善待父母
  20. Linux系统如何把kali装进u盘,怎么把kalilinux系统装到u盘中

热门文章

  1. linux查看进程命令wwn,在Linux下查看WWN、WWPN方法
  2. MySQL数据库学习资料(七)
  3. vmare平台上esxi主机,搭建虚拟机ping不通网关
  4. 华硕笔记本怎么安装计算机,华硕笔记本电脑驱动怎么安装(一次装全,Win10)...
  5. Element 中表格表头添加搜索图标和功能使用
  6. 多元相关性分析_多元统计分析与R语言建模之相关分析与回归分析
  7. R语言面积图 area chart
  8. Yet Another Crosses Problem
  9. 银行考试计算机也需要考金融知识吗,银行招聘考试科技岗考试科目及考试内容...
  10. 合取范式 (CNF)