T O P

[资源分享]     springcloud alibaba-nacos配置中心

  • By - 楼主

  • 2021-02-28 20:00:20
  •   nacos除了充当注册中心外,还能作为配置中心,下面进行演示。

      1. 创建 模块,用于读取 nacos配置中心的统一配置

      2. 添加依赖

    <dependencies>
            <!--   nacos config     -->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            </dependency>
            <!--  SpringCloud alibaba nacos    -->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            </dependency>
            <!--  web组件      -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-actuator</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-devtools</artifactId>
                <scope>runtime</scope>
                <optional>true</optional>
            </dependency>
            <dependency>
                <groupId>cn.aib.springcloud</groupId>
                <artifactId>springclud-api-common</artifactId>
                <version>1.0-SNAPSHOT</version>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>
        </dependencies>

      3. 添加配置;这里配置有两个:bootstrap.yml和appliation.yml。前者是为了读取共用的配置,后者是本模块私有的配置

      bootstrap.yml:

    server:
      port: 3377
    spring:
      application:
        name: nacos-config-client
      cloud:
        nacos:
          discovery:
            server-addr: localhost:8848 #注册中心的地址
          config:
            server-addr: localhost:8848 #配置中心的地址
            file-extension: yaml # 要读取nacos上的配置文件的后缀,这里只能是yaml,不能是yml

      application.yml:

    spring:
      profiles:
        active: dev

      4. 主启动

    @EnableDiscoveryClient
    @SpringBootApplication
    public class NacosCientApplication {
        public static void main(String[] args) {
            SpringApplication.run(NacosCientApplication.class, args);
        }
    }

      5. 启动nacos

      6. 在nacos添加统一配置信息

      6. 测试;访问http://localhost:3377/config/info

      总结:

        1. 配置中心默认读取 nacos上的 ${spring.application.name}-${spring.profile.active}.${spring.cloud.nacos.config.file-extension};因此DataID 的命名要符合 服务名-开发环境名.后缀名

        2. 目前nacos支持yaml,不支持yml

        3. 如果要动态刷新,需要加业务类上加 @RefreshScope

    本帖子中包含资源

    您需要 登录 才可以下载,没有帐号?立即注册