首页 > 其他分享 >数据结构小学期第七天

数据结构小学期第七天

时间:2024-07-07 17:45:01浏览次数:17  
标签:小学 JWT token static claims import 数据结构 com 第七天

今天继续学习Springboot的项目实战

今天了解了一下,如何在自己登陆后,还能让界面知道是谁在进行操作,这个功能的实现需要JWT令牌的作用

我们需要先引入一个JWT依赖

1 <!--      java-JWT坐标-->
2       <dependency>
3           <groupId>com.auth0</groupId>
4           <artifactId>java-jwt</artifactId>
5           <version>4.4.0</version>
6       </dependency>

然后需要一个工具类来得到和分析token

package com.itheima.utils;

import com.auth0.jwt.JWT;
import com.auth0.jwt.algorithms.Algorithm;

import java.util.Date;
import java.util.Map;

public class JwtUtil {

    private static final String KEY = "itheima";
    
    //接收业务数据,生成token并返回
    public static String genToken(Map<String, Object> claims) {
        return JWT.create()
                .withClaim("claims", claims)
                .withExpiresAt(new Date(System.currentTimeMillis() + 1000 * 60 * 60 * 12))
                .sign(Algorithm.HMAC256(KEY));
    }

    //接收token,验证token,并返回业务数据
    public static Map<String, Object> parseToken(String token) {
        return JWT.require(Algorithm.HMAC256(KEY))
                .build()
                .verify(token)
                .getClaim("claims")
                .asMap();
    }

}

 

标签:小学,JWT,token,static,claims,import,数据结构,com,第七天
From: https://www.cnblogs.com/Lyh3012648079/p/18288721

相关文章

  • [数据结构]堆
    建堆的两种方式自上而下这种方式的思路是,每插入一个节点,就向上比较,判断是否需要与其父节点进行交换,分析这种方式的时间复杂度,假设树的高度为h,以下均考虑最坏情况,也就是每一个节点都调整到根第一层的1个节点不需要调整第二层的2个节点,每个节点向上调整1次,2*1,第三层的4个节点......
  • 【手写数据库内核组件】01 解析树的结构,不同类型的数据结构组多层的链表树,抽象类型统
    不同类型的链表​专栏内容:postgresql使用入门基础手写数据库toadb并发编程个人主页:我的主页管理社区:开源数据库座右铭:天行健,君子以自强不息;地势坤,君子以厚德载物.文章目录不同类型的链表概述1.数据类型识别1.1TLV格式介绍1.2结构体分层定义1.3定义......
  • 数据结构——RMQ(ST表)问题
    数据结构——RMQ(ST表)问题问题描述对于序列\(A[1\dotsn]\),有\(m\)组询问\(\langlel,r\rangle\),求\(\max_{i=l}^rA_i\)。我们下面使用\(\mathcalO(A)\sim\mathcalO(B)\)表示预处理\(\mathcalO(A)\),单次询问\(\mathcalO(B)\)的时间复杂度。线段树解法时间复杂度......
  • 数据结构初阶 遍历二叉树问题(一)
    一.链式二叉树的实现1.结构体代码typedefintBTDateType;typedefstructBinaryTreeNode{ BTDateTypedata; structBinaryTreeNode*left; structBinaryTreeNode*right;}BTNode;大概的图形是这样子2.增删查改我们这里要明确的一点的二叉树的增删查改是没有......
  • DAY 1 数据结构与算法 (选择排序,冒泡排序,插入排序)
    1.选择排序        选择排序(SelectionSort)是一种简单直观的排序算法。其基本思想是每一次从待排序的数据元素中选择最小(或最大)的一个元素,放在已排好序的元素序列的末尾,直到全部待排序的数据元素排好序为止。即每一次设定一个数为最大或者最小值,然后与其他的数进行交......
  • 数据结构——二叉树相关题目
    1.寻找二叉树中数值为x的节点//寻找二叉树中数值为x的节点BTNode*TreeFind(BTNode*root,BTDataTypex)//传过来二叉树的地址和根的地址,以及需要查找的数据{ if(root==Null) { returnNull; }//首先需要先判断这个树是否为空,如果为空直接返回空 if(root->data=......
  • [数据结构] 基于交换的排序 冒泡排序&&快速排序
    标题:[数据结构]基于交换的排序冒泡排序&&快速排序@水墨不写bug(图片来源于网络) 目录(一)冒泡排序优化后实现:(二)快速排序I、实现方法: (1)hoare法hoare法实现快排: (2)挖坑法挖坑法实现:(3)双指针法 双指针法实现:  II、快速排序复杂度分析:比较完备的快速排序实现如......
  • 数据结构题目:模式匹配的BF算法
    1、实验目的键盘输入目标串(主串)s、模式串(子串)t,编写程序,实现顺序串的BF模式匹配算法。2、实验具体要求匹配成功,输出位序,匹配不成功,显示相应提示信息。例如:s=“aababcdcccc”,t=“bcd”。3、实验设计思路(编程语言、模块划分及函数功能描述等)模块划分及函数功能描述:(1)主程序......
  • 小学期第一次博客
    一、配置虚拟机环境首先,安装和配置虚拟机是整个项目的基础。选择适当的虚拟机管理软件(如VirtualBox或VMware)并安装Linux操作系统(如Ubuntu或CentOS)。配置好虚拟机后,需要确保虚拟机的网络设置为桥接模式,以便能够与外部网络通信。二、安装和配置Hadoop下载和安装Hadoop:从Hadoop的......
  • JAVA零基础小白自学日志——第七天
    文章目录一、类1.类名2.这是啥东西?虽然在类里,但是不在构造方法里面,也不在语句块里,它是谁?它要干啥?3.方法二、对象(重头戏来喽)1.类与对象的关系2.类不是对象,对象由类构造3.类和对象到底在程序里是什么样的今日提要:类和对象(什么?你说你没对象!?去去去,别打岔,我这对象不是你......