依赖导入
<!-- 配置中心来做配置管理-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
具体使用流程
创建配置文件
- resource文件夹下创建bootstrap文件,然后进行配置
nacos启动以及配置文件绑定
- 启动nacos之后,在nacos中添加配置,名为微服务名.properties
- dataid按照微服务名.properties的方式来进行命名
- group默认为default_group,除此以外可以添加dev,test,prod来适应多场景配置需要
- 配置内容
- 配置内容即为常规配置内容
点击发布配置之后,该配置文件交由nacos进行管理,之后在springboot项目中进行配置即可启用
springboot侧相关配置
说明
- 默认需要设定两个参数
# 配置当前应用名字 即当前微服务的名字
spring.application.name=gulimall-coupon
# 配置nacos配置中心部署的地址ip
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
- 默认需要设定两个参数
配置完这两个参数之后,默认去寻找的配置项为 nacos中 data_id 为 gulimall-coupon 的配置文件,默认加载配置分组为default_group
深入了解
命名空间
主要用来做配置隔离
默认命名空间为public,默认新增的所有配置都是在public空间下
- 使用场景
- 正常使用场景往往是一个产品,同时具有开发环境,测试环境,予发布环境等多个环境,这些环境之间需要做配置隔离。
使用的时候需要在bootstrap.properties文件中指定namespace的id
当前应用场景为
每个微服务自建立一个同名命名空间
- 命名空间下建 dev,test,prod 配置分组,用来应对不同业务需求 ```java
配置当前应用名字 即当前微服务的名字
spring.application.name=gulimall-coupon
配置nacos配置中心部署的地址ip
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
指定使用的命名空间
spring.cloud.nacos.config.namespace=1cc35b02-5d63-4e6d-bcc2-2113880ce295 spring.cloud.nacos.config.group=dev
为一个列表,,需要进行赋值
每项中有几个属性,下面进行阐释
data-id 就是nacos中的dataid
spring.cloud.nacos.config.ext-config[0].data-id=datasource.yml
group 为 需要使用该dataid的哪个组别,dev,test,prod
spring.cloud.nacos.config.ext-config[0].group=dev
是否开启动态刷新
spring.cloud.nacos.config.ext-config[0].refresh=true
data-id 就是nacos中的dataid
spring.cloud.nacos.config.ext-config[1].data-id=mybatis.yml
group 为 需要使用该dataid的哪个组别,dev,test,prod
spring.cloud.nacos.config.ext-config[1].group=dev
是否开启动态刷新
spring.cloud.nacos.config.ext-config[1].refresh=true
data-id 就是nacos中的dataid
spring.cloud.nacos.config.ext-config[2].data-id=other.yml
group 为 需要使用该dataid的哪个组别,dev,test,prod
spring.cloud.nacos.config.ext-config[2].group=dev
是否开启动态刷新
spring.cloud.nacos.config.ext-config[2].refresh=true ```
- 对应的nacos配置如图