From eb844e3260657b6bb9de03c1e5feca50bdf8190d Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期三, 17 十一月 2021 13:50:58 +0800
Subject: [PATCH] fix 修复 OssFactory 在程序启动未调用api 没有初始化 导致无法订阅配置更改问题
---
ruoyi-oss/src/main/java/com/ruoyi/oss/factory/OssFactory.java | 18 +++++++++++-------
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssConfigServiceImpl.java | 4 ++++
2 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/ruoyi-oss/src/main/java/com/ruoyi/oss/factory/OssFactory.java b/ruoyi-oss/src/main/java/com/ruoyi/oss/factory/OssFactory.java
index ecb269d..b5de001 100644
--- a/ruoyi-oss/src/main/java/com/ruoyi/oss/factory/OssFactory.java
+++ b/ruoyi-oss/src/main/java/com/ruoyi/oss/factory/OssFactory.java
@@ -24,18 +24,22 @@
@Slf4j
public class OssFactory {
- static {
- RedisUtils.subscribe(CloudConstant.CACHE_CONFIG_KEY, String.class, msg -> {
- refreshService(msg);
- log.info("璁㈤槄鍒锋柊OSS閰嶇疆 => " + msg);
- });
- }
-
/**
* 鏈嶅姟瀹炰緥缂撳瓨
*/
private static final Map<String, ICloudStorageStrategy> SERVICES = new ConcurrentHashMap<>();
+ /**
+ * 鍒濆鍖栧伐鍘�
+ */
+ public static void init() {
+ log.info("鍒濆鍖朞SS宸ュ巶");
+ RedisUtils.subscribe(CloudConstant.CACHE_CONFIG_KEY, String.class, msg -> {
+ refreshService(msg);
+ log.info("璁㈤槄鍒锋柊OSS閰嶇疆 => " + msg);
+ });
+ }
+
/**
* 鑾峰彇榛樿瀹炰緥
*/
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssConfigServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssConfigServiceImpl.java
index df3f6d1..ddbf421 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssConfigServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssConfigServiceImpl.java
@@ -16,6 +16,7 @@
import com.ruoyi.common.utils.RedisUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.oss.constant.CloudConstant;
+import com.ruoyi.oss.factory.OssFactory;
import com.ruoyi.system.domain.SysOssConfig;
import com.ruoyi.system.domain.bo.SysOssConfigBo;
import com.ruoyi.system.domain.vo.SysOssConfigVo;
@@ -49,6 +50,7 @@
@PostConstruct
public void init() {
List<SysOssConfig> list = list();
+ // 鍔犺浇OSS鍒濆鍖栭厤缃�
for (SysOssConfig config : list) {
String configKey = config.getConfigKey();
if ("0".equals(config.getStatus())) {
@@ -56,6 +58,8 @@
}
setConfigCache(true, config);
}
+ // 鍒濆鍖朞SS宸ュ巶
+ OssFactory.init();
}
@Override
--
Gitblit v1.9.3