<!--引入JWT依赖-->
<dependency>
<groupId>com.auth0</groupId>
<artifactId>java-jwt</artifactId>
<version>3.4.0</version>
</dependency>
public class JWTUtils {
private static final String SECRET = "SmyC47re$ML%F72x6koqyUQ0XLQOasdsad";
public static String getToken(Map<String,String> map, Integer expired){
Calendar instance = Calendar.getInstance();
instance.add(Calendar.SECOND,expired);
JWTCreator.Builder builder = JWT.create();
map.forEach((k,v)->{
builder.withClaim(k,v);
});
String token = builder.withExpiresAt(instance.getTime())
.sign(Algorithm.HMAC256(SECRET));
return token;
}
public static DecodedJWT verify(String token){
return JWT.require(Algorithm.HMAC256(SECRET)).build().verify(token);
}
public static void main(String[] args) {
Map<String,String> map = new HashMap<>();
map.put("userId","1");
map.put("loginName","admin");
String token = getToken(map,60);
System.out.println(token);
DecodedJWT tokenInfo = verify("eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJsb2dpbk5hbWUiOiJhZG1pbiIsImV4cCI6MTU5NzE5ODI1MywidXNlcklkIjoiMSJ9.jTcL_PFAbn_AT05alHGv3kzEI_vsAf5RiCDJEqLH30A");
String userId = tokenInfo.getClaim("userId").asString();
String loginName = tokenInfo.getClaim("loginName").asString();
System.out.println(userId);
System.out.println(loginName);
}
}