From 3f02cd983227bff0b90ac1e11f905926775ed67a Mon Sep 17 00:00:00 2001 From: zhaojun <873019219@qq.com> Date: Sun, 5 Mar 2023 15:34:00 +0800 Subject: [PATCH] =?UTF-8?q?:bug:=20=E4=BF=AE=E5=A4=8D=E5=AD=98=E5=82=A8?= =?UTF-8?q?=E6=BA=90=E5=88=AB=E5=90=8D=E4=BF=AE=E6=94=B9=E5=90=8E=E5=86=8D?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=9B=9E=E5=8E=BB=E6=8F=90=E7=A4=BA=E5=8D=A0?= =?UTF-8?q?=E7=94=A8=E7=9A=84=20BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../storage/service/StorageSourceService.java | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/main/java/im/zhaojun/zfile/module/storage/service/StorageSourceService.java b/src/main/java/im/zhaojun/zfile/module/storage/service/StorageSourceService.java index 3b3b1fb..2784317 100644 --- a/src/main/java/im/zhaojun/zfile/module/storage/service/StorageSourceService.java +++ b/src/main/java/im/zhaojun/zfile/module/storage/service/StorageSourceService.java @@ -129,6 +129,16 @@ public class StorageSourceService { } + /** + * 根据存储源 key 清除 key 的缓存 + * + * @param storageKey + * 存储源 key + */ + @CacheEvict(key = "#storageKey") + public void clearCacheByStorageKey(String storageKey) {} + + /** * 根据存储源 key 获取存储源 id * @@ -202,8 +212,8 @@ public class StorageSourceService { public boolean existByStorageKey(String storageKey) { return storageSourceService.findByStorageKey(storageKey) != null; } - - + + /** * 删除指定存储源设置, 会级联删除其参数设置 * @@ -336,6 +346,11 @@ public class StorageSourceService { if (storageSource.getId() == null) { storageSourceMapper.insert(storageSource); } else { + // 判断是否修改了存储源别名,如果修改了则清除之前存储源别名的缓存。 + StorageSource originStorageSource = storageSourceMapper.selectById(storageSource.getId()); + if (!StrUtil.equals(originStorageSource.getKey(), storageSource.getKey())) { + storageSourceService.clearCacheByStorageKey(originStorageSource.getKey()); + } storageSourceMapper.updateById(storageSource); }