1. 引入jar包

<dependency>
<groupId>com.auth0</groupId>
<artifactId>java-jwt</artifactId>
<version>3.4.0</version>
</dependency>

2. 实现

 1 public class JWTUtil {
2 //过期时间15分钟
3 private static final long EXPIRE_TIME = 15*60*1000;
4 //token秘钥,设置的复杂点这里用一串uuid,并用HMAC256加密的
5 private static final String TOKEN_SECRET = "JFKDJFKGFGFGIFG8R9589589";
6
7 //生成token
8 public static String generatorToken(String userName,Stringn userId) {
9 //过期时间
10 Date date = new Date(System.currentTimeMillis()+EXPIRE_TIME );
11 //秘钥及加密算法
12 Algorithm algorithm = Algorithm.HMAC256(TOKEN_SECRET);
13 //设置头部信息
14 Map<String,Object> header = new HashMap<String,Object>(2);
15 header.put("type","JWT");
16 header.put("alg","HS256");
17 //附带用户信息,生成token
18 return JWT.create()
19 .withHeader(header)
20 .withClaim("userName",userName)
21 .withClaim("userId",userId)
22 .withExpiresAt(date)
23 .sign(algorithm);
24 }
25 }

最新文章

  1. SQL函数汇总【精选篇】
  2. 订餐系统之Excel批量导入
  3. (转)FTP操作类,从FTP下载文件
  4. Mac Jenkins 权限问题
  5. category分类
  6. (摘至)程序员老鸟写sql语句的经验之谈
  7. Can’t find file mysql/host.frm
  8. sharepoint 2010 隐藏左边菜单left menu样式脚本
  9. CentOS 7 ARM 版发布:支持树莓派2/香蕉派/CubieTruck
  10. mycat源码分析
  11. 微信扫码下载APP
  12. OO第一阶段总结
  13. 各种类型文件的Content-Type
  14. iOS----------viewcontroller中的dealloc方法不调用
  15. XUGUO-书呆子-搜索书箱
  16. python 一些魔法
  17. wpf 圆角TextBox 样式
  18. Event Recommendation Engine Challenge分步解析第七步
  19. Java锁----Lock实现原理
  20. XGBoost参数调优小结

热门文章

  1. 再识redis-2
  2. OS-lab4
  3. 苹果ios APP怎么打包?推荐这个网站
  4. 用requests-html和SelectorGadget轻松精准抓取网页数据
  5. 在axios拦截器js文件中无法使用vue-router问题
  6. grep的正则匹配使用方式
  7. 设置NTP校时
  8. 2021 icpc 沈阳 I 【分式线性变换的保交比性】
  9. next_permutation / prev_permutation 用法
  10. uniapp获取本机所有应用包名