sa-token 统一redis 前缀

xml 复制代码
		<dependency>
            <groupId>cn.dev33</groupId>
            <artifactId>sa-token-reactor-spring-boot3-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>cn.dev33</groupId>
            <artifactId>sa-token-redis-jackson</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-aop</artifactId>
        </dependency>

启动类增加注解

java 复制代码
@EnableAspectJAutoProxy
java 复制代码
package com.ys.config;

import com.alibaba.fastjson2.JSON;
import com.ys.constant.RedisConstant;
import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;

/**
 * @author kong
 */
@Aspect
@Component
@Slf4j
public class SaTokenDaoRedisJacksonAspect {

    // 定义切点,匹配SomeClass类的所有方法
    @Pointcut("execution(* cn.dev33.satoken.dao.SaTokenDaoRedisJackson.*(..))")
    public void methodPointcut() {
    }

    // 在方法执行前执行的操作
    @Around("methodPointcut()")
    public Object beforeMethod(ProceedingJoinPoint joinPoint) throws Throwable {
        Object[] args = joinPoint.getArgs();

        for (int i = 0, n = args.length; i < n; i++) {
            if (args[i] instanceof String temp) {
                if (temp.contains("token")) {
                    args[i] = RedisConstant.PREFIX + temp;

                }
            }
        }

        return joinPoint.proceed(args);
    }
}
相关推荐
找不到工作的菜鸟4 分钟前
Three.js三大组件:场景(Scene)、相机(Camera)、渲染器(Renderer)
前端·javascript·html
Java微观世界6 分钟前
Object核心类深度剖析
java·后端
定栓7 分钟前
vue3入门-v-model、ref和reactive讲解
前端·javascript·vue.js
MrSYJ11 分钟前
为什么HttpSecurity会初始化创建两次
java·后端·程序员
专注API从业者11 分钟前
基于 Flink 的淘宝实时数据管道设计:商品详情流式处理与异构存储
大数据·前端·数据库·数据挖掘·flink
龙在天12 分钟前
H5开发,开发照相机,以及组件封装
前端
hinotoyk16 分钟前
TimeUnit源码分享
java
曼妥思19 分钟前
PosterKit:跨框架海报生成工具
前端·开源
binqian38 分钟前
【异步】js中异步的实现方式 async await /Promise / Generator
开发语言·前端·javascript
Jerry说前后端1 小时前
Android 移动端 UI 设计:前端常用设计原则总结
android·前端·ui