第一步引入依赖
<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bootstrap</artifactId> <version>3.1.0</version> </dependency>
为什么要引入spring-cloud-starter-bootstrap在springboot2.4版本以上如果不引入这个架包不会告诉spring这个bootstrap.properties的优先级比application.properties高
第二步创建一个bootstrap.properties文件
在项目resources文件下创建一个bootstrap.properties文件,这个文件在项目启动时比application.properties文件先识别
在bootstrap.properties中填写服务器中心信息
#服务中心名称 spring.application.name=best-coupon #服务中心地址 spring.cloud.nacos.config.server-addr=127.0.0.1:8848
这里填写自己的名称and地址
第三步 在nacos中添加自己的配置
Data Id使用这个服务中心的名称
配置格式要选择properties格式
最后一步在自己的Controller中添加刷新注解@RefreshScope(动态获取并刷新bean)
在自己的application.properties文件中随意添加测试值
保证自己@Value(${"配置象的名"})中的信息没有写错
这样我们在项目启动后就可以更改配置设置中的配置内容在不用重启项目的情况下动态改变application.properties文件中键所对应的值
如果配置中心和当前应用的配置文件中都配置了相同的项,优先使用配置中心的配置
nacos配置中心细节:
(1)命名空间:配置隔离:默认:public(保留空间)
bootstrap.properties如果不填写命名空间名默认是public
在nacos控制台中新建命名组
在bootstrap.properties中更换命名空间
#命名空间 spring.cloud.nacos.config.namespace= "值"
"值"取下面的一长串
在配置列表这里就有你命名的命名空间
在prop中新建配置
点击发布
在次测试,注意因为你修改了配置文件 这里要重启服务
再次运行
配置分组:
默认所有的配置集都属于:DEFAULT_GROUP
在创建配置的时候可以自定义配置组
在bootstrap.properties中更换配置分组
#命名配置组 spring.cloud.nacos.config.group=1314
在次测试,注意因为你修改了配置文件 这里要重启服务