首页IT科技nacos springcloud 配置中心(SpringCloud Alibaba(四) – Nacos 配置中心)

nacos springcloud 配置中心(SpringCloud Alibaba(四) – Nacos 配置中心)

时间2025-05-06 04:16:02分类IT科技浏览3518
导读:1、环境搭建 1.1 依赖 <!-- nacos注册中心 注解 @EnableDiscoveryClient -->...

1          、环境搭建

1.1 依赖

<!-- nacos注册中心 注解 @EnableDiscoveryClient --> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> <!-- nacos配置中心 --> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency>

1.2 bootstrap.properties 配置

# 端口 server.port=9607 # 服务名 spring.application.name=kgcmall96-nacos-config # nacos 配置中心 的地址 spring.cloud.nacos.server-addr=127.0.0.1:8848 # 指定nacos配置中心支持的配置文件后缀            ,注意:nacso上增加的配置文件后缀要跟此处一致                ,默认值properties spring.cloud.nacos.config.file-extension=yml

1.3 请求

/** * Created On : 28/11/2022. * <p> * Author : huayu * <p> * Description: nacos配置中心测试入口 */ @RestController public class KgcMallNacosConfigController { //单个读取远程配置中心的公共配置参数 @Value("${kh96.nacos.config:kh96-default}") private String kh96NacosConfig; /** * @param : [] * @return : java.lang.String * @author : huayu * @date : 28/11/2022 * @description : 读取远程nacos配置中心添加的统一自定义配置      ,返回 */ @GetMapping("/testNacosConfig") public String testNacosConfig() { return kh96NacosConfig; } }

1.4 添加远程配置文件

1.4.1 添加 1.4.2 配置信息 1.4.3 添加成功

1.5 测试

1.6 修改配置信息

1.7 再次 测试

1.8 重启项目测试

2                  、配置信息实时刷新

每次修改配置文件都需要重启项目         ,十分麻烦                ,需要设置实时刷新;

2.1 添加注解

@RestController @RefreshScope //nacos配置动态刷新注解 public class KgcMallNacosConfigController { ...... }

2.2 测试

3      、批量读取配置信息

3.1 配置类

/** * Created On : 28/11/2022. * <p> * Author : huayu * <p> * Description: KgcMallNacosConfig */ @Configuration @RefreshScope @ConfigurationProperties(prefix = "kh96.nacos") @Data public class KgcMallNacosConfig { /* 测试 批量读取 配置信息 */ private String config; }

3.2 请求

/** * Created On : 28/11/2022. * <p> * Author : huayu * <p> * Description: nacos配置中心测试入口 */ @RestController public class KgcMallNacosConfigController { @Autowired private KgcMallNacosConfig kgcMallNacosConfig; /** * @param : [] * @return : java.lang.String * @author : huayu * @date : 28/11/2022 * @description : 读取远程nacos配置中心添加的统一自定义配置         ,返回 */ @GetMapping("/testNacosConfig") public String testNacosConfig() { //测试 批量读取 return kgcMallNacosConfig.getConfig(); } }

3.3 测试

4       、读取配置文件的组成

prefix-active-extension

prefix:前缀      ,默认为服务名

active:激活环境

extension:文件后缀(propertion或者yml),需要跟配置中心一致

${spring.cloud.nacos.config.prefix}.${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}

4.1 active指定配置环境

# 指定nacos配置中心支持的配置文件后缀                ,注意:nacso上增加的配置文件后缀要跟此处一致           ,默认值properties spring.cloud.nacos.config.file-extension=yml # 指定环境 # 配置文件前缀(默认以 服务名为前缀) spring.cloud.nacos.config.prefix=config ## 指定激活环境 spring.profiles.active=test # 最终拼接出来的就是 config-test-yml

4.2 添加配置文件

4.3 测试

5                  、命名空间 和 分组

5.1 添加命名空间

5.2 指定命名空间个分组

# 指定nacso配置中心的名称空间   ,配置的是对应名称空间的id值                 ,不是名称 # 官方建议:namespace名称空间             ,作为环境区分,不同环境               ,使用不同的名称空间 spring.cloud.nacos.config.namespace=0e35ec99-dfac-45eb-84bb-e9d8a35f726e # 指定名称空间下的分组                ,一般都是用于区分相同环境加的不同应用项目组   ,如果不配合配置            ,默认使用的是当前名称空间下的默认分组DEFAULT_GROUP,也支持自定义分组 spring.cloud.nacos.config.group=KH96_GROUP 5.2.1 添加配置

6         、配置文件级别

6.1 配置文件级别

主配置 > 扩展配置 > 共享配置

相同类型配置下                ,下标越大优先级越高;

6.2 共享配置

6.2.1 配置信息 # nacos 的共享配置      ,此配置项是一个数组         ,数组的下标越大                ,优先级越高         ,同等的共享配置      ,高优先级自动覆盖低优先级 # 提醒:nacos所有的配置中                ,主配置存在的情况下           ,具有最高优先级   ,同等配置不会被共分享配置覆盖(所以先删除主配置) spring.cloud.nacos.config.shared-configs[0].data-id=kgcmall96-shared-config.yml spring.cloud.nacos.config.shared-configs[0].group=KH96_GROUP spring.cloud.nacos.config.shared-configs[0].refresh=true 6.2.2 添加配置文件 6.2.3 测试

需要先删除主配置                 ,因为它优先级最高;

6.2.4 在配置一个共享配置             ,下标1 # 下标1覆盖下标0的配置 spring.cloud.nacos.config.shared-configs[1].data-id=kgcmall96-priority-config.yml spring.cloud.nacos.config.shared-configs[1].group=KH96_GROUP spring.cloud.nacos.config.shared-configs[1].refresh=true 6.2.5 添加配置文件 6.2.6 测试

6.3 扩展配置

6.3.1 配置信息 ## nacos扩展配置,此配置项是一个数组,数组的下标越大               ,优先级越高                ,同等的共享配置   ,高优先级自动覆盖低优先级 ## 扩展配置的优先级低于主配置            ,高于共享配置                ,如果某种场景下需要单独覆盖共享配置      ,就可以使用扩展配置         ,比如某个oracle                ,其他都意思mysql spring.cloud.nacos.config.extension-configs[0].data-id=kgcmall96-extend-config.yml spring.cloud.nacos.config.extension-configs[0].group=KH96_GROUP spring.cloud.nacos.config.extension-configs[0].refresh=true 6.3.2 添加配置文件 6.3.3 测试

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
react新建项目(React–》从零开始搭建一个文章后台管理系统)