# Nacos配置中心
官网文档: https://nacos.io/zh-cn/docs/v2/quickstart/quick-start.html (opens new window)
# 一、统一配置中心
# 使用方式
引入依赖
最好使用Cloud的依赖,可以配置服务名称和多个文件
<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency>
1
2
3
4添加配置 bootstrap.properties
配置文件在dataId:
${prefix}
-${spring.profiles.active}
.${file-extension}
比如下面需要配置 [dataId=myapi-dev.yml]
spring.application.name=myapi # 服务名 spring.cloud.nacos.config.server-addr=192.168.1.201:8848 # 配置中心地址 spring.cloud.nacos.config.namespace=1d76bb9a-c98b-4e22-95d3-2008e17380d5 # 命名空间ID 一般用来隔离环境 spring.cloud.nacos.config.group=DEFAULT_GROUP # 分组 spring.cloud.nacos.config.prefix=${spring.application.name} # 配置文件前缀 spring.cloud.nacos.config.file-extension=yml # 配置文件后缀 spring.profiles.active=dev # 环境设置
1
2
3
4
5
6
7
8使用
@RestController @RefreshScope // 开启配置自动更新 public class DemoController { @Value("${server.port:}") //获取配置 server.port private String port; @GetMapping("/tool") public String get() { System.out.println("aaaaaaaaaaaaaaaa port+ " + port); return port; } }
1
2
3
4
5
6
7
8
9
10
11
12
13多个配置
加载配置,默认情况下,会加载
Data ID=${spring.application.name}.properties,Group=DEFAULT_GROUP
下的配置现在有多个配置,分别为日志配置文件 logback-spring.properties 和 myapi.properties
去Nacos里配置
配置
# logback-spring.properties spring.cloud.nacos.config.ext-config[0].dataId=logback-spring.properties spring.cloud.nacos.config.ext-config[0].group=DEFAULT_GROUP spring.cloud.nacos.config.ext-config[0].refresh=true # myapi.properties spring.cloud.nacos.config.ext-config[1].dataId=myapi.properties spring.cloud.nacos.config.ext-config[1].group=DEFAULT_GROUP spring.cloud.nacos.config.ext-config[1].refresh=true
1
2
3
4
5
6
7
8
9
# 二、服务注册中心
引入依赖
<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency>
1
2
3
4配置文件 bootstrap.properties 配置注册中心地址
spring.application.name=myapi spring.cloud.nacos.discovery.server-addr=192.168.1.201:8848
1
2启动类新增注解,开启服务注册
@EnableDiscoveryClient