2-SpringCloudAlibaba config配置
1. 说明
由前面我们已经知道了,nacos的职责由config和discovery,现在我们首先分析config
由于是配置信息,并非应用的信息,因此需要比原来application.properties
更早的加载,就需要引入bootstrap.properties
当读取完bootstrap.properties
中的配置的nacos的相关信息时,会去nacos中找到对应的dataId对应的配置文件,此文件等效于application.properties文件,
读取之后会加入Enviroment中,也就是读取到了内存里面,后续解析时便可以从Enviroment中获取数据了
2. 工程搭建
2.1. pom依赖
1 | <dependency> |
2.2. 配置类
配置类需要配置在bootstrap.properties
中,它比application.properties
更早加载
配置类我们主要关注spring.application.name和spring.cloud.nacos.config.server-addr两个参数,这是必须的
- spring.application.name:应用名,用于拼接dataId,必不可少
- spring.cloud.nacos.config.server-addr:nacos的地址,这个也必须有,配置错了地址不会报错,但是获取的数据是空的
配置如下:
1 | # 应用名 |
题外话:
nacos在spring中得到配置选项:
2.3. nacos中的配置
nacos中配置如下:
需要注意的是,这里的dataId必须按照既定的格式来配置
格式为${spring.application.name}-{spring.profiles.active}.${file-extension}
,即应用名-环境.文件格式
- 普通的如:
spring-cloud-alibaba-config-test.properties
- 带环境标识的:
spring-cloud-alibaba-config-test-dev.properties
,此处dev为测试环境 - 带有后缀的
需要先在bootstrap.properties
中配置spring.cloud.nacos.config.file-extension=yaml
格式则为:spring-cloud-alibaba-config-test.yaml
- 带有后缀的且带环境标识的:
spring-cloud-alibaba-config-test-dev.yaml
2.4. 启动类
启动类启动了之后在加载application.properties之前就会加载nacos中的,此时便可以拿出来
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 KewenBlogs!
评论