引入依赖
代码语言:javascript复制dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-config'
implementation 'org.springframework.cloud:spring-cloud-starter-bootstrap'
}
创建bootstrap.yaml
代码语言:javascript复制spring:
application:
name: consumer
cloud:
nacos:
config:
server-addr: 192.168.64.2:8848
server:
port: 8080
创建测试类
@RefreshScope 加上这个注解是为了动态刷新,否则nacos客户端就算接收到配置变更,也不会去刷新的,可以自己测试下
代码语言:javascript复制/**
* @Author 乐哥聊编程
* @Doc 关注公众号"乐哥聊编程"获取文档和源码
* @Date 2023/5/21
* @Description
*/
@RestController
@RefreshScope
public class TestController {
@Value("${app}")
private String app;
@GetMapping("/getApp")
public String getApp() {
return app;
}
}
扩展
dataId的组成:
代码语言:javascript复制${prefix}-${spring.profiles.active}.${file-extension}
- prefix 默认为 spring.application.name 的值,也可以通过配置项 spring.cloud.nacos.config.prefix来配置。
- spring.profiles.active 即为当前环境对应的 profile,详情可以参考 Spring Boot文档。注意:当 spring.profiles.active 为空时,对应的连接符 - 也将不存在,dataId 的拼接格式变成
{file-extension}
- file-exetension 为配置内容的数据格式,可以通过配置项 spring.cloud.nacos.config.file-extension 来配置。目前只支持 properties 和 yaml 类型。