-
maven配置
<!-- 配置中心来做配置管理--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency>
-
创建一个Bootstrap.properties
spring.application.name=gulimall-coupon spring.cloud.nacos.config.server-addr=127.0.0.1:8848
-
需要给配置中心默认添加一个叫数据集(Data Id) gulimall-coupon.properties。默认规则,应用名.properties。
-
给配置文件添加配置
-
动态获取配置
@RefreshScope动态获取并刷新配置
@Value(“${配置项的名称}”): 获取到配置
如果配置中心和当前应用的配置文件中都配置了相同的项,优先使用配置中心的配置 。
细节
-
命名空间(配置隔离)
默认:public(保留空间):默认新增的所有配置都在public空间
bootstrap.properties 需要使用哪个命名空间下的配置
#id号从nacos复制 #spring.cloud.nacos.config.namespace=295f6050-da22-4bb0-9ff5-70439a694271
每个微服务之间相互隔离,每个微服务都创建自己的命名空间,只加载自己命名空间下的所有配置。
-
配置集:所有的配置的集合
-
配置集ID:配置文件名
-
配置分组:默认所有的配置集都属于:DEFAULT_GROUP
spring.cloud.nacos.config.namespace = dev
每个微服务创建自己的命名空间。使用配置分组区分环境,dev,test,prod
同时加载多个配置集
- 微服务任何配置信息,任何配置文件都可以放在配置中心中
- 只需要在bootstrap.properties说明加载配置中心中有哪些配置文件即可
以前springboot任何方式从配置文件中获取值,都能使用。
配置中心有优先使用配置中心的。
spring.cloud.nacos.config.ext-config[0].data-id = #配置集id spring.cloud.nacos.config.ext-config[0].group = dev spring.cloud.nacos.config.ext-config[0].refresh = true