Selaa lähdekoodia

update 初始化数据转移到 ApplicationRunner 统一处理

疯狂的狮子li 3 vuotta sitten
vanhempi
commit
97a12075b1

+ 37 - 0
ruoyi-system/src/main/java/com/ruoyi/system/runner/SystemApplicationRunner.java

@@ -0,0 +1,37 @@
+package com.ruoyi.system.runner;
+
+import com.ruoyi.common.config.RuoYiConfig;
+import com.ruoyi.system.service.ISysConfigService;
+import com.ruoyi.system.service.ISysDictTypeService;
+import com.ruoyi.system.service.ISysOssConfigService;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.ApplicationArguments;
+import org.springframework.boot.ApplicationRunner;
+import org.springframework.stereotype.Component;
+
+@Slf4j
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@Component
+public class SystemApplicationRunner implements ApplicationRunner {
+
+    private final RuoYiConfig ruoyiConfig;
+    private final ISysConfigService configService;
+    private final ISysDictTypeService dictTypeService;
+    private final ISysOssConfigService ossConfigService;
+
+    @Override
+    public void run(ApplicationArguments args) throws Exception {
+        ossConfigService.init();
+        log.info("初始化OSS配置成功");
+        if (ruoyiConfig.isCacheLazy()){
+            return;
+        }
+        configService.loadingConfigCache();
+        log.info("加载参数缓存数据成功");
+        dictTypeService.loadingDictCache();
+        log.info("加载字典缓存数据成功");
+    }
+
+}

+ 5 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysOssConfigService.java

@@ -17,6 +17,11 @@ import java.util.Collection;
  */
 public interface ISysOssConfigService extends IServicePlus<SysOssConfig, SysOssConfigVo> {
 
+    /**
+     * 初始化OSS配置
+     */
+    void init();
+
     /**
      * 查询单个
      */

+ 0 - 17
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java

@@ -3,7 +3,6 @@ package com.ruoyi.system.service.impl;
 import cn.hutool.core.convert.Convert;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ruoyi.common.annotation.DataSource;
-import com.ruoyi.common.config.RuoYiConfig;
 import com.ruoyi.common.constant.Constants;
 import com.ruoyi.common.constant.UserConstants;
 import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
@@ -17,10 +16,8 @@ import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.system.domain.SysConfig;
 import com.ruoyi.system.mapper.SysConfigMapper;
 import com.ruoyi.system.service.ISysConfigService;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import javax.annotation.PostConstruct;
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.List;
@@ -34,20 +31,6 @@ import java.util.Map;
 @Service
 public class SysConfigServiceImpl extends ServicePlusImpl<SysConfigMapper, SysConfig, SysConfig> implements ISysConfigService, ConfigService {
 
-    @Autowired
-    private RuoYiConfig ruoyiConfig;
-
-    /**
-     * 项目启动时,初始化参数到缓存
-     */
-    @PostConstruct
-    public void init() {
-        if (ruoyiConfig.isCacheLazy()){
-            return;
-        }
-        loadingConfigCache();
-    }
-
     @Override
     public TableDataInfo<SysConfig> selectPageConfigList(SysConfig config) {
         Map<String, Object> params = config.getParams();

+ 0 - 15
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java

@@ -3,7 +3,6 @@ package com.ruoyi.system.service.impl;
 import cn.hutool.core.collection.CollUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import com.ruoyi.common.config.RuoYiConfig;
 import com.ruoyi.common.constant.Constants;
 import com.ruoyi.common.constant.UserConstants;
 import com.ruoyi.common.core.domain.entity.SysDictData;
@@ -22,7 +21,6 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import javax.annotation.PostConstruct;
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.List;
@@ -38,19 +36,6 @@ public class SysDictTypeServiceImpl extends ServicePlusImpl<SysDictTypeMapper, S
 
     @Autowired
     private SysDictDataMapper dictDataMapper;
-    @Autowired
-    private RuoYiConfig ruoyiConfig;
-
-    /**
-     * 项目启动时,初始化字典到缓存
-     */
-    @PostConstruct
-    public void init() {
-        if (ruoyiConfig.isCacheLazy()){
-            return;
-        }
-        loadingDictCache();
-    }
 
     @Override
     public TableDataInfo<SysDictType> selectPageDictTypeList(SysDictType dictType) {

+ 1 - 2
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssConfigServiceImpl.java

@@ -28,7 +28,6 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import javax.annotation.PostConstruct;
 import java.util.Collection;
 import java.util.List;
 
@@ -47,7 +46,7 @@ public class SysOssConfigServiceImpl extends ServicePlusImpl<SysOssConfigMapper,
     /**
      * 项目启动时,初始化参数到缓存,加载配置类
      */
-    @PostConstruct
+    @Override
     public void init() {
         List<SysOssConfig> list = list();
         // 加载OSS初始化配置