jwt依赖
<dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt</artifactId></dependency>第一步,定义一个秘钥
#秘钥jwt.secret= 76bd425b6f29f7fcc2e0bfc286043df1 //引入秘钥 @Value("${jwt.secret}") private String secret;第二步,加密
//生成tonken //把id加成秘钥 Map<String,Object> claims=new HashMap<>(); claims.put("id",user.getId()); // 生成token String token = Jwts.builder() .setClaims(claims) //payload,存放数据的位置,不能放置敏感数据,如:密码等 .signWith(SignatureAlgorithm.HS256, secret) //设置加密方法和加密盐 .setExpiration(new DateTime().plusHours(12).toDate()) //设置过期时间,12小时后过期 .compact();第三步,解密
// 通过token解析数据 Map<String, Object> body = Jwts.parser() .setSigningKey(secret) .parseClaimsJws(token) .getBody(); User user = new User(); user.setId(Long.valueOf(body.get("id").toString()));