From d44b66e6d7af038a3dcc6eb8416398f90961c79b Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 09 八月 2022 10:03:12 +0800
Subject: [PATCH] 优化代码

---
 springboot/src/main/java/com/java110/boot/BootApplicationStart.java |   83 ++++++++++++++++++++++++++---------------
 1 files changed, 53 insertions(+), 30 deletions(-)

diff --git a/springboot/src/main/java/com/java110/boot/BootApplicationStart.java b/springboot/src/main/java/com/java110/boot/BootApplicationStart.java
index f782b10..1441967 100644
--- a/springboot/src/main/java/com/java110/boot/BootApplicationStart.java
+++ b/springboot/src/main/java/com/java110/boot/BootApplicationStart.java
@@ -16,40 +16,29 @@
 package com.java110.boot;
 
 import com.java110.core.annotation.Java110CmdDiscovery;
-import com.java110.core.annotation.Java110ListenerDiscovery;
 import com.java110.core.client.RestTemplate;
 import com.java110.core.context.Environment;
 import com.java110.core.event.cmd.ServiceCmdEventPublishing;
-import com.java110.core.event.service.api.ServiceDataFlowEventPublishing;
 import com.java110.core.log.LoggerFactory;
 import com.java110.core.trace.Java110FeignClientInterceptor;
 import com.java110.core.trace.Java110RestTemplateInterceptor;
+import com.java110.intf.dev.ICacheV1InnerServiceSMO;
 import com.java110.service.init.ServiceStartInit;
-import io.swagger.annotations.ApiOperation;
+import com.java110.utils.factory.ApplicationContextFactory;
+import com.java110.utils.util.StringUtil;
 import okhttp3.ConnectionPool;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
-import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
 import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
 import org.springframework.boot.web.client.RestTemplateBuilder;
-import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
 import org.springframework.cloud.client.loadbalancer.LoadBalanced;
-import org.springframework.cloud.openfeign.EnableFeignClients;
 import org.springframework.context.ApplicationContext;
 import org.springframework.context.annotation.Bean;
 import org.springframework.http.converter.StringHttpMessageConverter;
 import org.springframework.scheduling.annotation.EnableAsync;
-import springfox.documentation.builders.ApiInfoBuilder;
-import springfox.documentation.builders.PathSelectors;
-import springfox.documentation.builders.RequestHandlerSelectors;
-import springfox.documentation.service.ApiInfo;
-import springfox.documentation.spi.DocumentationType;
-import springfox.documentation.spring.web.plugins.Docket;
-import springfox.documentation.swagger2.annotations.EnableSwagger2;
 
 import javax.annotation.Resource;
 import java.nio.charset.Charset;
@@ -59,23 +48,24 @@
 /**
  * 杩欎釜鏈嶅姟鏄皢 绯荤粺閮ㄧ讲涓簊pring boot鐗�
  * 濡傛灉鏄痵pring cloud 寰湇鍔¢儴缃� 涓嶇敤鍚姩杩欎釜绫�
- *
+ * <p>
  * excludeName = {
- "com.java110.intf.acct",
- "com.java110.intf.code",
- "com.java110.intf.common",
- "com.java110.intf.community",
- "com.java110.intf.demo",
- "com.java110.intf.dev",
- "com.java110.intf.fee",
- "com.java110.intf.goods",
- "com.java110.intf.job",
- "com.java110.intf.oa",
- "com.java110.intf.order",
- "com.java110.intf.report",
- "com.java110.intf.store",
- "com.java110.intf.user"
- }
+ * "com.java110.intf.acct",
+ * "com.java110.intf.code",
+ * "com.java110.intf.common",
+ * "com.java110.intf.community",
+ * "com.java110.intf.demo",
+ * "com.java110.intf.dev",
+ * "com.java110.intf.fee",
+ * "com.java110.intf.goods",
+ * "com.java110.intf.job",
+ * "com.java110.intf.oa",
+ * "com.java110.intf.order",
+ * "com.java110.intf.report",
+ * "com.java110.intf.store",
+ * "com.java110.intf.user"
+ * }
+ *
  * @version v0.1
  * @auther com.java110.wuxw
  * @mail 928255095@qq.com
@@ -174,9 +164,42 @@
             ServiceStartInit.initSystemConfig(context);
 
             Environment.setSystemStartWay(Environment.SPRING_BOOT);
+
+            //鍒锋柊缂撳瓨
+            flushMainCache(args);
         } catch (Throwable e) {
             logger.error("绯荤粺鍚姩澶辫触", e);
         }
     }
 
+    /**
+     * 鍒锋柊涓昏鐨勭紦瀛�
+     *
+     * @param args
+     */
+    private static void flushMainCache(String[] args) {
+
+        logger.debug("鍒ゆ柇鏄惁闇�瑕佸埛鏂版棩蹇楋紝鍙傛暟 args 涓� {}", args);
+
+        //鍥犱负濂藉鏈嬪弸鍚姩鏃� 涓嶅姞 鍙傛暟-Dcache 鎵�浠ュ惎鍔ㄦ椂妫�娴� redis 涓槸鍚﹀瓨鍦� java110_hc_version
+        //String mapping = MappingCache.getValue("java110_hc_version");
+        String mapping = "";
+        if (StringUtil.isEmpty(mapping)) {
+            ICacheV1InnerServiceSMO devServiceCacheSMOImpl = (ICacheV1InnerServiceSMO) ApplicationContextFactory.getBean(ICacheV1InnerServiceSMO.class);
+            devServiceCacheSMOImpl.startFlush();
+            return;
+        }
+
+        if (args == null || args.length == 0) {
+            return;
+        }
+        for (int i = 0; i < args.length; i++) {
+            if (args[i].equalsIgnoreCase("-Dcache")) {
+                logger.debug("寮�濮嬪埛鏂版棩蹇楋紝鍏ュ弬涓猴細{}", args[i]);
+                ICacheV1InnerServiceSMO devServiceCacheSMOImpl = (ICacheV1InnerServiceSMO) ApplicationContextFactory.getBean(ICacheV1InnerServiceSMO.class);
+                devServiceCacheSMOImpl.startFlush();
+            }
+        }
+    }
+
 }
\ No newline at end of file

--
Gitblit v1.8.0