SpringBoot项目集成Nacos
参与一个xxx项目,系统为使用SpringBoot开发框架的单体项目,包含大量接口集成,上线试运行两个月后,因一次断电,客户突然提出没法监测系统是否正常运行,讨论后提出将系统接入到某一个某综合管理平台中,即可实时监控,具体实现就是需连接到管理平台的nacos中去,于是开始改造,搜索了相关资料,第一次改造未成功,第二次正常。网上原理性的内容太多太多,有兴趣可自行查询,因此只分享实际改造过程,具体过程如下
一.添加依赖
在pom.xml文件引入nacos的相关依赖,注意查看原项目的springboot版本,和nacos版本,否则容易出现版本不匹配异常(本项目使用springboot 2.0.8,nacos 1.1.3)
1 2 3 4 5 6 7 8 9 10 11 | <!-- Nacos 组件依赖 --> <dependency> <groupId>com.alibaba.boot</groupId> <artifactId>nacos-discovery-spring-boot-starter</artifactId> <version> 0.2 . 3 </version> </dependency> <dependency> <groupId>com.alibaba.boot</groupId> <artifactId>nacos-config-spring-boot-starter</artifactId> <version> 0.2 . 3 </version> </dependency> |
二.增加nacos配置
当前项目使用的配置文件为application.yml,按照资料来说,不能直接在application.yml增加nacos配置,否则不识别,验证后确实如此,因此只需在原配置application.yml文件同目录下增加bootstrap.yml文件,内容如下
1 2 3 4 5 6 7 8 9 10 11 | spring: application: name: mdm-service server: port: 8980 ip: 127.0 . 0.1 nacos: config: server-addr: 127.0 . 0.1 : 8848 discovery: server-addr: 127.0 . 0.1 : 8848 |
其中,name为注册到naocs中的服务名称,port,ip为当前项目的ip地址和端口,server-addr为nacos的地址
三.增加nacos配置类
用于加载bootstrap.yml文件中nacos配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | /** * */ package com.xx.modules; import javax.annotation.PostConstruct; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; import com.alibaba.nacos.api.annotation.NacosInjected; import com.alibaba.nacos.api.exception.NacosException; import com.alibaba.nacos.api.naming.NamingService; /** * @author Administrator * */ @Configuration public class NacosConfig { @Value ( "${server.port}" ) private int serverPort; @Value ( "${server.ip}" ) private String serverIP; @Value ( "${spring.application.name}" ) private String applicationName; @NacosInjected private NamingService namingService; @PostConstruct public void registerInstance() throws NacosException { namingService.registerInstance(applicationName, serverIP, serverPort); } } |
四.修改springboot启动类
启动类上增加@NacosPropertySource注解
1 | @NacosPropertySource (dataId = "mdm-config" ,autoRefreshed = true ) |
其中,dataId为nacos 配置管理-》配置列表的配置文件名称,可自行新建,内容随便写个,注意格式即可(也可不加配置文件,为空时不影响项目连接nacos)
五.启动nacos和当前项目
访问nacos查看结果,nacos账号密码:nacos/nacos
点击详情,查看springboot项目连接地址和端口
改造完成。
ps:网上好多资料都是springcloud项目集成nacos的示例,容易造成困扰,希望大家注意甄别。
本文来自博客园,作者:泠雨0702,转载请注明原文链接:https://www.cnblogs.com/lingyu0702/p/16313776.html
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库