Jwt简单示例

  1. 在pom.xml中添加依赖
<dependency>
    <groupId>io.jsonwebtoken</groupId>
    <artifactId>jjwt</artifactId>
    <version>0.6.0</version>
</dependency>
  1. 编写创建Jwt的代码
import io.jsonwebtoken.JwtBuilder;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.SignatureAlgorithm;
import java.util.Date;

/**
 * @author Mi
 * @version 1.0
 * @description: TODO
 * @date 2022/1/6 15:37
 */
public class Jwt1Produce {
    public static void main(String[] args) {
        //创建jwt代码

        //Jwt的密钥
        String signKey="xiaofengKey";

        //创建jwt
        JwtBuilder jwtBuilder = Jwts.builder().setId("20181004").setSubject("qinghuaci")
                .setIssuedAt(new Date())
                .claim("userName","xiaofengcanyue")
                .claim("password","123456")
                //设置签名值
                .signWith(SignatureAlgorithm.HS256,signKey);
        System.out.println(jwtBuilder.compact());
    }

}

运行生成Jwt
在这里插入图片描述

  1. 测试解码生成的Jwt
import io.jsonwebtoken.Claims;
import io.jsonwebtoken.Jwts;

/**
 * 将2中的Jwt解码
 * @author Mi
 * @version 1.0
 * @description: TODO
 * @date 2022/1/6 16:14
 */
public class Jwt2Decrypt {
    private static final String signKey = "xiaofengKey";

    public static void main(String[] args) {
        String jwt = "eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIyMDE4MTAwNCIsInN1YiI6InFpbmdodWFjaSIsImlhdCI6MTY0MTU2NzM1NywidXNlck5hbWUiOiJ4aWFvZmVuZ2Nhbnl1ZSIsInBhc3N3b3JkIjoiMTIzNDU2In0.9ifnIgR-JiDECx0-XXYvL_QJafKaPhG9F5_CKZd1kGo";
        Claims body = Jwts.parser().setSigningKey(signKey).parseClaimsJws(jwt).getBody();
        System.out.println(body.get("userName"));
        System.out.println(body.get("password"));
        System.out.println(body.values());
    }
}

运行结果
在这里插入图片描述


版权声明:本文为qq_44196212原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。