fix 修复 OssFactory 在程序启动未调用api 没有初始化 导致无法订阅配置更改问题
This commit is contained in:
parent
81d04fb31f
commit
eb844e3260
@ -24,18 +24,22 @@ import java.util.concurrent.ConcurrentHashMap;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
public class OssFactory {
|
public class OssFactory {
|
||||||
|
|
||||||
static {
|
/**
|
||||||
|
* 服务实例缓存
|
||||||
|
*/
|
||||||
|
private static final Map<String, ICloudStorageStrategy> SERVICES = new ConcurrentHashMap<>();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 初始化工厂
|
||||||
|
*/
|
||||||
|
public static void init() {
|
||||||
|
log.info("初始化OSS工厂");
|
||||||
RedisUtils.subscribe(CloudConstant.CACHE_CONFIG_KEY, String.class, msg -> {
|
RedisUtils.subscribe(CloudConstant.CACHE_CONFIG_KEY, String.class, msg -> {
|
||||||
refreshService(msg);
|
refreshService(msg);
|
||||||
log.info("订阅刷新OSS配置 => " + msg);
|
log.info("订阅刷新OSS配置 => " + msg);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 服务实例缓存
|
|
||||||
*/
|
|
||||||
private static final Map<String, ICloudStorageStrategy> SERVICES = new ConcurrentHashMap<>();
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取默认实例
|
* 获取默认实例
|
||||||
*/
|
*/
|
||||||
|
@ -16,6 +16,7 @@ import com.ruoyi.common.utils.PageUtils;
|
|||||||
import com.ruoyi.common.utils.RedisUtils;
|
import com.ruoyi.common.utils.RedisUtils;
|
||||||
import com.ruoyi.common.utils.StringUtils;
|
import com.ruoyi.common.utils.StringUtils;
|
||||||
import com.ruoyi.oss.constant.CloudConstant;
|
import com.ruoyi.oss.constant.CloudConstant;
|
||||||
|
import com.ruoyi.oss.factory.OssFactory;
|
||||||
import com.ruoyi.system.domain.SysOssConfig;
|
import com.ruoyi.system.domain.SysOssConfig;
|
||||||
import com.ruoyi.system.domain.bo.SysOssConfigBo;
|
import com.ruoyi.system.domain.bo.SysOssConfigBo;
|
||||||
import com.ruoyi.system.domain.vo.SysOssConfigVo;
|
import com.ruoyi.system.domain.vo.SysOssConfigVo;
|
||||||
@ -49,6 +50,7 @@ public class SysOssConfigServiceImpl extends ServicePlusImpl<SysOssConfigMapper,
|
|||||||
@PostConstruct
|
@PostConstruct
|
||||||
public void init() {
|
public void init() {
|
||||||
List<SysOssConfig> list = list();
|
List<SysOssConfig> list = list();
|
||||||
|
// 加载OSS初始化配置
|
||||||
for (SysOssConfig config : list) {
|
for (SysOssConfig config : list) {
|
||||||
String configKey = config.getConfigKey();
|
String configKey = config.getConfigKey();
|
||||||
if ("0".equals(config.getStatus())) {
|
if ("0".equals(config.getStatus())) {
|
||||||
@ -56,6 +58,8 @@ public class SysOssConfigServiceImpl extends ServicePlusImpl<SysOssConfigMapper,
|
|||||||
}
|
}
|
||||||
setConfigCache(true, config);
|
setConfigCache(true, config);
|
||||||
}
|
}
|
||||||
|
// 初始化OSS工厂
|
||||||
|
OssFactory.init();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Loading…
x
Reference in New Issue
Block a user