本文主要讲解nacos服务配置的命名空间。我们可以通过命名空间,分组,激活环境配置来获取nacos中对应名称空间、分组、激活环境对应文件信息。

例如:我们要创建多个名称空间,新创建的名称空间下没有配置信息,我们需要创建不同分组的配置信息,以便于获取这些信息。

具体步骤如下:

  1. http://localhost:8848/nacos中新建命名空间:
    在这里插入图片描述

创建好之后该名称空间下为空白

  1. 创建配置信息
    在这里插入图片描述
    说明:在dev命名空间中创建不同组别的配置信息。

查看这些不同组别的配置信息

  1. 导包(在模块3377中操作)
<dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
  1. 写配置

1)bootstrap.yml配置:

# nacos配置
server:
  port: 3377

spring:
  application:
    name: nacos-config-client
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848 #Nacos服务注册中心地址
      config:
        server-addr: localhost:8848 #Nacos作为配置中心地址
        file-extension: yaml #指定yaml格式的配置
        group: DEV_GROUP
        namespace: f1e7ecd8-7a82-4793-a97f-a39a07e20853


# ${spring.application.name}-${spring.profile.active}.${spring.cloud.nacos.config.file-extension}
# nacos-config-client-dev.yaml

# nacos-config-client-test.yaml   ----> config.info

说明:
namespace——定位了名称空间(后面的字符是创建名称空间后自动产生的)。
group——定位到该名称空间下的分组。

2)application.yml配置:

spring:
  profiles:
    active: dev # 表示开发环境
#    active: test # 表示测试环境
#    active: info

说明:
active——激活的环境。即上面配置中对应分组下的Data Id中的对应的环境名称。此时就已经精确定位到了具体的配置文件上。

  1. 主程序类
@SpringBootApplication
@EnableDiscoveryClient
public class NacosConfigClientMain3377 {
    public static void main(String[] args) {
        SpringApplication.run(NacosConfigClientMain3377.class, args);
    }
}

  1. 业务类
    通过controller来获取上面文件中的配置信息。
@RestController
@RefreshScope
public class ConfigClientController {
    @Value("${config.info}")
    private String configInfo;

    @GetMapping("/config/info")
    public String getConfigInfo() {
        return configInfo;
    }
}
  1. 测试
    在浏览器中输入http://localhost:3377/config/info来查看配置信息。
    在这里插入图片描述
GitHub 加速计划 / na / nacos
29.83 K
12.75 K
下载
Nacos是由阿里巴巴开源的服务治理中间件,集成了动态服务发现、配置管理和服务元数据管理功能,广泛应用于微服务架构中,简化服务治理过程。
最近提交(Master分支:3 个月前 )
4334cd16 * Support custom client configuration timeout.(#12748) * Add UT.(#12748) 11 天前
b04d2266 15 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐