当前位置: 首页 > news >正文

springboot3.x只需两步快速整合nacos作配置中心

一、下载依赖

我在网上找了各种资料,都是要先确定springcloud版本,实际操作却可能由于版本或者镜像或者maven等问题报红,出现各种情况。

实际只需要指定特定版本号就行,添加下面两个依赖

        <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId><version>2023.0.1.0</version></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-bootstrap</artifactId><version>4.2.0</version></dependency>

二、添加依赖后,在你的src---resources目录下新建一个bootstrap.yml文件,输入nacos的配置信息即可

spring:config:import: "nacos:your_data_id?group=your_group"application:name: your_namecloud:nacos:config:server-addr: your_addrnamespace:your_namespaceaccess-key: #有就填没有就不填secret-key: #有就填没有就不填file-extension: yamlencode: UTF-8connect-timeout: 5000  # 连接超时时间(毫秒)read-timeout: 30000    # 读取超时时间(毫秒)# 本地配置(仅用于开发测试,生产环境应从Nacos获取)
app:registration-switch: truelocal-config: falselog-dir: ./logenv-type: devlogging:level:com.alibaba.nacos.client: TRACEorg.springframework.cloud.nacos: DEBUG

启动项目就可以了,在启动日志中会有nacos的链接信息

可以写个测试类,测试是否能拿到nacos中配置的配置信息:

package com.config;import com.alibaba.nacos.api.NacosFactory;
import com.alibaba.nacos.api.config.ConfigService;
import com.alibaba.nacos.api.exception.NacosException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.CommandLineRunner;
import org.springframework.core.env.ConfigurableEnvironment;
import org.springframework.core.env.EnumerablePropertySource;
import org.springframework.stereotype.Component;import java.util.Properties;@Component
public class NacosConfig implements CommandLineRunner {@Autowiredprivate ConfigurableEnvironment env;@Value("${spring.cloud.nacos.config.server-addr}")private String serverAddr;@Value("${spring.cloud.nacos.config.namespace}")private String namespace;@Value("${spring.cloud.nacos.config.access-key}")private String accessKey;@Value("${spring.cloud.nacos.config.secret-key}")private String secretKey;@Value("${MYSQL.Host}")private String mysqlHost;@Overridepublic void run(String... args) throws InterruptedException {System.out.println("等待Nacos配置加载...");
//        Thread.sleep(3000);// 直接使用import中的dataId和group(固定值)String dataId = "your_data_id";  // 与import中的dataId一致String group = "your_group";    // 与import中的group一致try {Properties properties = new Properties();properties.put("serverAddr", serverAddr);properties.put("namespace", namespace);properties.put("accessKey", accessKey);properties.put("secretKey", secretKey);properties.put("tenant", namespace);  // 阿里云MSE可能需要通过tenant传递namespaceConfigService configService = NacosFactory.createConfigService(properties);String content = configService.getConfig(dataId, group, 5000);System.out.println("从 Nacos 获取的配置内容:\n" + content);
// 尝试获取业务配置(如MYSQL.Host)System.out.println("mysqlHost = " + mysqlHost);  // 直接使用@Value注入} catch (NacosException e) {System.err.println("连接 Nacos 失败: " + e.getErrMsg());e.printStackTrace();}}
}

日志打印:


文章转载自:

http://qkcupHKT.qdxwf.cn
http://YqwKpCT3.qdxwf.cn
http://LR3WoJew.qdxwf.cn
http://MLilm3on.qdxwf.cn
http://M3NildmP.qdxwf.cn
http://akxs078S.qdxwf.cn
http://xdzKmhZt.qdxwf.cn
http://sys5WpTP.qdxwf.cn
http://tMq4cqa2.qdxwf.cn
http://AGXdmVhH.qdxwf.cn
http://Vi3kdUgC.qdxwf.cn
http://adURIdNY.qdxwf.cn
http://rFL9c48p.qdxwf.cn
http://2qRIsE52.qdxwf.cn
http://ilkbksGf.qdxwf.cn
http://7WAubIZn.qdxwf.cn
http://tbOAoKxJ.qdxwf.cn
http://sf7Om1MZ.qdxwf.cn
http://kwD5Mwvw.qdxwf.cn
http://zuPcH0S2.qdxwf.cn
http://NOdkEir5.qdxwf.cn
http://qObU2ESt.qdxwf.cn
http://wrcP2q7Q.qdxwf.cn
http://279oFujI.qdxwf.cn
http://So9ADq8A.qdxwf.cn
http://A7eBFN6B.qdxwf.cn
http://WEogiKpM.qdxwf.cn
http://LL24z5iE.qdxwf.cn
http://xiMRsBX0.qdxwf.cn
http://ht5WLd3a.qdxwf.cn
http://www.dtcms.com/a/204405.html

相关文章:

  • javaweb-html
  • springboot使用xdoc-report包导出word
  • 【写在创作纪念日】基于SpringBoot和PostGIS的各省东西南北四至极点区县可视化
  • 深度学习Y8周:yolov8.yaml文件解读
  • Python60日基础学习打卡D32
  • 强化学习鱼书(7)——神经网络和Q学习
  • TCP全连接和tcpdump抓包实现
  • 量化研究--ATR高频量化网格策略实盘研究
  • cocos creator使用jenkins打包微信小游戏,自动上传资源到cdn,windows版运行jenkins
  • JavaWebsocket-demo
  • Spark Core 源码关键环节的深度解析
  • mapbox进阶,手写放大镜功能
  • Windows安装MongoDb.并使用.NET 9连接
  • 前后端的双精度浮点数精度不一致问题解决方案,自定义Spring的消息转换器处理JSON转换
  • [杂学笔记]浏览器多进程与多线程架构、wstring类型、哈希表、红黑树与哈希表的对比、C++标准库Random类
  • 每日算法 -【Swift 算法】寻找字符串中最长回文子串(三种经典解法全解析)
  • 工业物联网网关在变电站远程监控中的安全传输解决方案
  • vscode离线安装组件工具vsix
  • Java安全-Servlet内存马
  • 计算机网络--第一章(下)
  • 贪心算法 Part04
  • Python数据分析实战:Pandas高效处理Excel数据指南
  • DataOutputStream DataInputStream转换流
  • Mysql-数据闪回工具MyFlash
  • IOMMU打开 关闭
  • 【76. 最小覆盖子串】
  • Java使用mybatis-plus做查询时LocalDateTime报错处理方案
  • Oracle Enqueue Names
  • Nginx配置同一端口不同域名或同一IP不同端口
  • DSP定时器的计算