从零开始的SpringBoot前后端分离入门级项目(三)

本文介绍了如何在SpringBoot项目中进行前后端分离的入门实践,包括实体类编写和用户鉴权功能。利用JWT和拦截器实现用户访问拦截与鉴权,详细讲解了创建Jwt工具类、TokenInterceptor的实现以及InterceptorConfig的配置过程。
摘要由CSDN通过智能技术生成

实体类编写

在前面的文章中我们已经完成了项目目录和基本框架的搭建,现在我们开始编写实体类,首先我们在model包下创建一个pojo子包。
注意:关于PO、VO、POJO、DTO等概念网络上已经有很多资料了,在本项目中不再阐述其的详细含义,且为了方便起见只划分POJO与DTO,为此产生的一些有歧义或错误的划分方法或用法请读者们见谅。
创建好子包之后我们创建相应的pojo,一张表对应一个类,如果编写过Web项目的同学对这步应该是比较熟悉的,创建相应的类的过程笔者不一一讲解,具体可以参见笔者的GitHub主页,后续将会上传完整的直接导入的工程代码,创建完毕后请务必将@Data、@AllArgsConstructor、@NoArgsConstructor三个注解加上。
pojo创建完毕

利用Token进行用户鉴权

实体类编写完之后我们开始进行用户权限认证功能的编写,在本项目中利用了jwt和拦截器(interceptor)进行实现。
首先在本项目仅分为三种角色:

  1. 实验室管理员(ADMIN)
  2. 实验室成员(VIP)
  3. 普通用户(MEMBER)

这种划分方式是不够严谨和安全的,目前的权限划分一般是分为用户角色和用户权限两个部分,每个用户对应某个角色,某个角色拥有某些权限,欢迎读者自行思考更完善的权限划分方案。

创建Jwt工具类

首先我们先前往util包中创建一个名为JwtUtil的类,类的内容如下:
JwtUtil

/**
 * @Author Alfalfa99
 * @Date 2020/9/13 15:54
 * @Version 1.0
 * JWT生成以及校验工具类
 */

@ConfigurationProperties("jwt.config")
@Component
public class JwtUtil {
   
    private String key;
    private long ttl;

    public String getKey() {
   
        return key;
    }

    public void setKey(String key) {
   
        this.key = key;
    }

    public long getTtl() {
   
        return ttl;
    }

    public void setTtl(long ttl) {
   
        this.ttl = ttl;
    }

    /**
     * 生成JWT
     *
     * @param id
     * @return
     */
    public String createJWT(String id, String roles) {
   
        long nowMillis = System.currentTimeM
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值