From 45ce929bd45f3c956198b0e3355da24572a7762c Mon Sep 17 00:00:00 2001 From: Ziin Date: Mon, 16 Jun 2025 14:38:13 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1=EF=BC=9A?= =?UTF-8?q?=E6=B8=85=E7=90=86=E8=B4=A6=E5=8F=B7=E7=88=AC=E5=8F=96=E6=AC=A1?= =?UTF-8?q?=E6=95=B0=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tkdata-model-server/pom.xml | 5 +++ .../tkdata/job/CleanTKAccountCache.java | 36 +++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 tkdata-model-server/src/main/java/cn/iocoder/yudao/module/tkdata/job/CleanTKAccountCache.java diff --git a/tkdata-model-server/pom.xml b/tkdata-model-server/pom.xml index ca039fd..6488be3 100644 --- a/tkdata-model-server/pom.xml +++ b/tkdata-model-server/pom.xml @@ -39,6 +39,11 @@ cn.iocoder.boot yudao-spring-boot-starter-mybatis + + + cn.iocoder.boot + yudao-spring-boot-starter-biz-tenant + UTF-8 diff --git a/tkdata-model-server/src/main/java/cn/iocoder/yudao/module/tkdata/job/CleanTKAccountCache.java b/tkdata-model-server/src/main/java/cn/iocoder/yudao/module/tkdata/job/CleanTKAccountCache.java new file mode 100644 index 0000000..18bb0a4 --- /dev/null +++ b/tkdata-model-server/src/main/java/cn/iocoder/yudao/module/tkdata/job/CleanTKAccountCache.java @@ -0,0 +1,36 @@ +package cn.iocoder.yudao.module.tkdata.job; + +import cn.iocoder.yudao.framework.quartz.core.handler.JobHandler; +import cn.iocoder.yudao.framework.tenant.core.job.TenantJob; +import lombok.extern.slf4j.Slf4j; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; +import java.util.Set; + +/* + * @author: ziin + * @date: 2025/6/13 18:54 + */ +@Component +@Slf4j +public class CleanTKAccountCache implements JobHandler { + + @Resource + private RedisTemplate redisTemplate; + + @Override + public String execute(String param) throws Exception { + + // 1. 获取所有匹配的 key(注意:keys 命令在生产环境可能阻塞 Redis,慎用!) + Set keys = redisTemplate.keys("tkaccount:" + "*"); + + // 2. 如果找到 key,则批量删除 + if (keys != null && !keys.isEmpty()) { + redisTemplate.delete(keys); + } + Boolean tkAccount = redisTemplate.delete("tkaccount:*"); + return String.format("清除缓存账号数量: %s", keys.size()); + } +}