处理动态路由加载的问题
This commit is contained in:
+20
-1
@@ -1,18 +1,37 @@
|
|||||||
package com.jero;
|
package com.jero;
|
||||||
|
|
||||||
|
import com.jero.loader.DynamicRouteLoader;
|
||||||
|
import org.springframework.boot.CommandLineRunner;
|
||||||
import org.springframework.boot.SpringApplication;
|
import org.springframework.boot.SpringApplication;
|
||||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||||
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
|
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
|
||||||
import org.springframework.cloud.openfeign.EnableFeignClients;
|
import org.springframework.cloud.openfeign.EnableFeignClients;
|
||||||
import org.springframework.context.ConfigurableApplicationContext;
|
import org.springframework.context.ConfigurableApplicationContext;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
@EnableFeignClients
|
@EnableFeignClients
|
||||||
@EnableDiscoveryClient
|
@EnableDiscoveryClient
|
||||||
@SpringBootApplication
|
@SpringBootApplication
|
||||||
public class JeroGatewayApplication {
|
public class JeroGatewayApplication implements CommandLineRunner {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private DynamicRouteLoader dynamicRouteLoader;
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
ConfigurableApplicationContext applicationContext = SpringApplication.run(JeroGatewayApplication.class, args);
|
ConfigurableApplicationContext applicationContext = SpringApplication.run(JeroGatewayApplication.class, args);
|
||||||
String userName = applicationContext.getEnvironment().getProperty("jero.test");
|
String userName = applicationContext.getEnvironment().getProperty("jero.test");
|
||||||
System.err.println("user name :" +userName);
|
System.err.println("user name :" +userName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 容器初始化后加载路由
|
||||||
|
* @param strings
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void run(String... strings) {
|
||||||
|
dynamicRouteLoader.refresh();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
-3
@@ -1,6 +1,5 @@
|
|||||||
package com.jero.loader;
|
package com.jero.loader;
|
||||||
|
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
@@ -11,8 +10,6 @@ import com.alibaba.nacos.api.exception.NacosException;
|
|||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.jero.common.constant.CacheConstant;
|
|
||||||
import org.jero.common.util.RedisUtil;
|
|
||||||
import com.jero.config.GatewayRoutersConfiguration;
|
import com.jero.config.GatewayRoutersConfiguration;
|
||||||
import com.jero.config.RouterDataType;
|
import com.jero.config.RouterDataType;
|
||||||
import org.springframework.cloud.gateway.event.RefreshRoutesEvent;
|
import org.springframework.cloud.gateway.event.RefreshRoutesEvent;
|
||||||
|
|||||||
+2
-2
@@ -53,9 +53,9 @@
|
|||||||
<module>jero-boot-starter</module>
|
<module>jero-boot-starter</module>
|
||||||
<!-- 单体应用启动类 -->
|
<!-- 单体应用启动类 -->
|
||||||
<module>jero-boot-single-startup</module>
|
<module>jero-boot-single-startup</module>
|
||||||
<!-- 需要微服务,请打开注释吗,并刷新maven
|
<!-- 需要微服务,请打开注释吗,并刷新maven -->
|
||||||
<module>jero-cloud-module</module>
|
<module>jero-cloud-module</module>
|
||||||
-->
|
|
||||||
</modules>
|
</modules>
|
||||||
|
|
||||||
<distributionManagement>
|
<distributionManagement>
|
||||||
|
|||||||
Reference in New Issue
Block a user