JWT工具类

JWT
  • 依赖

```java io.jsonwebtoken jjwt 0.9.1

commons-codec commons-codec ```

  • 工具类

```java public class JwtUtils {

private static final String SECRET = "123456@$$";  // 给token加密的秘钥

// 创建token
public static String createToken(Long userId) {
    HashMap<String, Object> claims = new HashMap<>();
    claims.put("userId", userId);

    JwtBuilder jwtBuilder = Jwts.builder()
            .signWith(SignatureAlgorithm.HS256, SECRET)
            .setClaims(claims)
            .setIssuedAt(new Date())
            .setExpiration(new Date(new DateTime().getMillis() + 24 * 60 * 60 * 1000));

    String token = jwtBuilder.compact();

    return token;
}

// 验证token
public static Map<String,Object> checkToken(String token) {

    try {
        Jwt parse = Jwts.parser().setSigningKey(SECRET).parse(token);

        return (Map<String,Object>)parse.getBody();
    } catch (Exception e) {
        e.printStackTrace();
    }

    return null;
}

// 测试
public static void main(String[] args) {

    String token = JwtUtils.createToken(413977414L);

    System.out.println(token);

    Map<String, Object> map =  JwtUtils.checkToken(token);

    System.out.println(map);

}

} ```

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值