新版本SpringBoot集成Nacos, ConfigServ

2021-10-22  本文已影响0人  视频怪物

在开发网关动态获取Nacos上配置的路由的时候, 网上很多参考的代码都是通过注入Nacos提供的NacosConfigProperties后, 使用该类获取configService添加监听器, 如下图代码所示:

旧版代码
但是出现个问题, 比较新的版本的Nacos包中已经没有NacosConfigProperties类了, 还有诸如使用@NacosInjected方式注入等都没有生效.
于是我在查阅了一些资料后集成成功, 在此记录一下代码.

开发环境

SpringBoot: 2.3.12.RELEASE
spring-cloud-alibaba-dependencies: 2.2.6.RELEASE

POM文件

<dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            <!--  去除Netflix Archaius多数据源相关的依赖 -->
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.cloud</groupId>
                    <artifactId>spring-cloud-netflix-archaius</artifactId>
                    <version>2.2.6.RELEASE</version>
                </exclusion>
                <exclusion>
                    <groupId>org.springframework.cloud</groupId>
                    <artifactId>spring-cloud-starter-netflix-archaius</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

核心代码

 @Resource
 private NacosDiscoveryProperties nacosDiscoveryProperties;

 ConfigService configService = NacosFactory.createConfigService(nacosDiscoveryProperties.getNacosProperties());

目前获取类似configService, namingService都可以通过NacosFactory的静态方法来构建出来:

NacosFactory
上一篇下一篇

猜你喜欢

热点阅读