13.在Spring Cloud中使用Nacos配置中心

2023-08-18 12:46:36 浏览数 (2)

引入依赖

代码语言: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 的拼接格式变成
{prefix}.

{file-extension}

  • file-exetension 为配置内容的数据格式,可以通过配置项 spring.cloud.nacos.config.file-extension 来配置。目前只支持 properties 和 yaml 类型。

0 人点赞