SpringBoot 整合 Nacos Config 实现配置文件动态更新

in Java with 0 comment

前提条件

安装好 nacos, 初始化 SpringBoot 项目

nacos 官方地址:https://nacos.io/zh-cn/

使用版本

Springboot 2.2.2.RELEASE
Nacos config 0.2.7

导入 Nacos 依赖

        <dependency>
            <groupId>com.alibaba.boot</groupId>
            <artifactId>nacos-config-spring-boot-starter</artifactId>
            <version>0.2.7</version>
        </dependency>

设置配置文件

设置 application.yml

spring:
  application:
    name: alone88-nacos-config
nacos:
  config:
    data-id: alone88-nacos-config # nacos 配置的 data-id
    server-addr: 127.0.0.1:8848 # nacos 服务器地址
    group: ALONE88 # 配置文件 Group
    namespace: 4afce008-bdf4-4ee5-92d5-5e2fe491f41d # 命名空间ID
    type: yaml # nacos 配置文件类型
    auto-refresh: true # 是否启用动态刷新配置
    bootstrap:
      enable: true # 这个需要为 true, 否则启动项目时不设置 value默认值会报错,也不会自动更新,请查看 NacosConfigApplicationContextInitializer 文件

登录 nacos 设置配置文件

1.png

2.png

编写 controller 测试

@RestController
@RequestMapping("config")
public class Controller {
    @NacosValue(value = "${alone88.name}", autoRefreshed = true)
    private String name;

    @GetMapping("get")
    public String get() {
        return this.name;
    }
}
Responses