JWT令牌生成校验以及登陆后下发令牌

JWT简介

全称 : JSON Web Token (https://iwt.io/)
定义了一种简洁的、自包含的格式,用于在通信双方以ison数据格式安全的传输信息。由于数字签名的存在,这些信息是可靠的

组成:

第一部分: Header(头),记录签名算法、令牌类型等。例如:{“alg”:"HS256"“type”:"JWT”}
第二部分: Payload(有效载荷),携带一些自定义信息、默认信息等。例如:{“id”:“1”,“username”:"Tom”}
第三部分: Signature(签名),防止Token被篡改、确保安全性。将 header、payload 加入指定秘钥,通过指定签名算法计算而来
在这里插入图片描述
JWT生成通过Base64编码实现 : 是一种基于64个可打印字符 (A-Z a-z 0-9 + /)来表示二进制数据的编码方式。

JWT生成

在 pom.xml 文件中导入JWT依赖

<dependency>
	<groupId>io.jsonwebtoken</groupId>
	<artifactId>jjwt</artifactId>
	<version>0.9.1</version>
</dependency>

生成JWT:前两个部分根据Base64算法生成的,最后一个部分根据HS256生成的

public void testGenJwt(){
   
	Map<String,
  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
系统主要功能按照数据流量、流向及处理过程分为临床诊疗、药品管理、财务管理、患者管理。诊疗活动由各工作站配合完成,并将临床信息进行整理、处理、汇总、统计、分析等。本系统包括以下工作站:门诊医生工作站、药房医生工作站、医技医生工作站、收费员工作站、对帐员工作站、管理员工作站。基于Spring cloud和Spring boot 2.x 实现 *项目演示 username:演示用户 password:test 由于没有进行部署,首次加载需要等待1~2分钟,加载完成之后比较流程流畅 好不容易抓到了推免的尾巴,所以最近打算更新一下部署文档,暂时不打算再维护代码了,但会继续推出其他有意思的基于Cloud的项目,欢迎关注 有问题请直接 issue(如果需要数据库和真实数据请联系本人邮箱) 申明:项目为NEU实训课设本组所作,包前缀为neu,侵权必改 之前由于学校突然增加人机交互课设,所以把该项目变成Private,但很多人无情fork之后并不删除,例如 TANGKUO,我已经联系他多次,他还是不删除。只能挂个名字在这了... 持续更新中...... 前言 HIS 项目致力于打造一个完整的医疗系统,采用现阶段流行技术实现。 下一阶段计划 添置部署教程 提高代码质量 更新技术栈为最新版本,并引入新技术 本仓库包含 系统 描述 HIS-master 单体应用 his-cloud 分布式微服务应用 HIS-web 诊疗前端 HIS-app 患者前端 注:单体应用和分布式实现业务完全相同 一. 项目架构 项目开发进度图 后端技术栈 技术 版本 说明 Spring Cloud Netflix Finchley.RELEASE 分布式全家桶 Spring Cloud Eureka 2.0.0.RELEASE 服务注册 Spring Cloud Zipkin 2.0.0.RELEASE 服务链路 Spring Cloud config 2.0.0.RELEASE 服务配置 Spring Cloud Feign 2.0.0.RELEASE 服务调用 Spring Cloud Zuul 2.0.0.RELEASE 服务网关 Spring Cloud Hystrix 2.0.0.RELEASE 服务熔断 Spring Cloud Turbine 2.0.0.RELEASE 服务熔断监控 Spring Boot Admin 2.0.1 服务监控 Spring Boot 2.0.3.RELEASE 容器+MVC框架 Spring Security 5.1.4.RELEASE 认证和授权框架 MyBatis 3.4.6 ORM框架 MyBatisGenerator 1.3.3 数据层代码生成 PageHelper 5.1.8 MyBatis物理分页插件 Maven 3.6.1 项目管理工具 Swagger2 2.7.0 交互式API文档 Elasticsearch 6.2.2 搜索引擎 kibana 6.2.2 数据分析和可视化平台 LogStash 6.2.2 数据采集引擎 RabbitMq 3.7.14 消息队列 Redis 3.2 缓存 Druid 1.1.10 数据库连接池 OSS 2.5.0 对象存储 JWT 0.9.1 跨域身份验证解决方案 Lombok 1.18.6 简化对象封装工具 Junit 4.12 单元测试框架 Logback 1.2.3 日志框架 Java doc ———— API帮助文档 Docker 18.09.6 应用容器引擎 Docker-compose 18.09.6 容器快速编排 前端技术栈 技术 版本 说明 Vue 2.6.10 前端框架 Vue-router 3.0.2 前端路由框架 Vuex 3.1.0 vue状态管理组件 Vue-cli ———— Vue脚手架 Element-ui 2.7.0 前端UI框架 Echarts 4.2.1 数据可视化框架 Uni-app ———— 跨平台前端框架 Mockjs 1.0.1-beta3 模拟后端数据 Axios 0.18.0 基于Promise的Http库 Js-cookie 2.2.0 Cookie组件 Jsonlint 1.6.3 Json解析组件 screenfull 4.2.0 全屏组件 Xlsx 0.14.1 Excel表导出组件 Webpack ———— 模板打包器 二. 项目展示 主页 主页 门诊医生工作台 门诊医生工作台 医技医生工作台 医技医生工作台 药房医生工作台 药房医生工作台 收银员工作台 收银员工作台 对账员工作台 对账员工作台 病历模板 病历模板 排班管理 排班管理 App挂号 App挂号 Sprin
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值