java 代码 生成 JWT token
时间: 2023-11-27 17:03:47 浏览: 84
生成JWT token的Java代码示例如下:
```java
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.SignatureAlgorithm;
import java.util.Date;
public class JwtUtil {
private static final String SECRET_KEY = "your-secret-key"; // 用于签名的密钥,可以自定义
public static String generateToken(String subject) {
Date now = new Date();
Date expiryDate = new Date(now.getTime() + 3600000); // 过期时间为1小时后
return Jwts.builder()
.setSubject(subject)
.setIssuedAt(now)
.setExpiration(expiryDate)
.signWith(SignatureAlgorithm.HS512, SECRET_KEY)
.compact();
}
public static void main(String[] args) {
String token = generateToken("user123");
System.out.println(token);
}
}
```
其中,`Jwts.builder()` 创建一个JWT token的构建器,`setSubject()` 设置JWT token的主题,`setIssuedAt()` 设置JWT token的签发时间,`setExpiration()` 设置JWT token的过期时间,`signWith()` 设置JWT token的签名算法和密钥,`compact()` 生成JWT token字符串。在上面的示例中,我们使用HS512算法和一个自定义的密钥进行签名。
阅读全文