iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >SpringBoot怎么集成Nacos实现注册中心与配置中心
  • 618
分享到

SpringBoot怎么集成Nacos实现注册中心与配置中心

2023-07-05 04:07:46 618人浏览 薄情痞子
摘要

这篇文章主要介绍“SpringBoot怎么集成Nacos实现注册中心与配置中心”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“springBoot怎么集成Nacos实现注册中心与配置中心”文章能帮助大

这篇文章主要介绍“SpringBoot怎么集成Nacos实现注册中心与配置中心”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“springBoot怎么集成Nacos实现注册中心与配置中心”文章能帮助大家解决问题。

SpringBoot整合Nacos

引入Maven依赖

首先,我们还是要引入 Maven 依赖

<!--注册中心的依赖--><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>

这里有一点是需要注意的:注册中心和配置中心的依赖版本要根据 SpringBoot 版本来选择。版本 0.2.x.RELEASE 对应的是 Spring Boot 2.x 版本,版本 0.1.x.RELEASE 对应的是 Spring Boot 1.x 版本。在这里我使用的 SpringBoot 版本是 2.2.4.RELEASE ,所以选择了 0.2.3 版本的注册中心和配置中心。

增加配置

接下来就是在 application.yml 中增加相关的配置????

server:
  port: 80
  servlet:
    context-path: /
spring:
  application:
    name: NacosDemo
nacos:
  config:
    server-addr: 127.0.0.1:8848
  discovery:
    server-addr: 127.0.0.1:8848
 

示例代码

首先我们需要在项目启动类上增加两个 Nacos 的注解????

import com.alibaba.nacos.spring.context.annotation.config.NacosPropertySource;import com.alibaba.nacos.spring.context.annotation.discovery.EnableNacosDiscovery;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication@EnableNacosDiscovery //注册中心注解 使用nacos@NacosPropertySource(dataid = "product_config",autoRefreshed = true) //配置中心注解:autoRefreshed 代表自动刷新注解public class NacosdemoApplication {    public static void main(String[] args) {        SpringApplication.run(NacosdemoApplication.class, args);    }}

接下来我们需要再增加一个 Nacos 的配置文件????

import com.alibaba.nacos.api.annotation.NacosInjected;import com.alibaba.nacos.api.exception.NacosException;import com.alibaba.nacos.api.naming.NamingService;import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.Configuration;import javax.annotation.PostConstruct;@Configurationpublic class NacosConfig {    @Value("${server.port}")    private int serverPort;    @Value("${spring.application.name}")    private String applicationName;    @NacosInjected    private NamingService namingService;    @PostConstruct    public void reGISterInstance() throws NacosException {        namingService.registerInstance(applicationName, "127.0.0.1", serverPort);    }}

最后我们写一个模拟获取配置参数的 Controller 类????

import com.alibaba.nacos.api.config.annotation.NacosValue;import org.springframework.WEB.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestController@RequestMapping("/test")public class ConfiGController {    @NacosValue(value = "${productName}",autoRefreshed = true)    private  String productName;    @RequestMapping("/productName")    public String getProductName(){        return productName;    }}

到这里代码已经准备完毕了,既然我们有一个获取配置参数的 Controller,那么我们肯定也少不了要定义一个待获取的配置参数。我们启动 Nacos ,登录它的后台页面,在左侧的配置管理中找到配置列表,在配置列表下创建一个新的配置。

SpringBoot怎么集成Nacos实现注册中心与配置中心

SpringBoot怎么集成Nacos实现注册中心与配置中心

❗❗❗这里一定要注意❗❗❗:在 Nacos 管理页面新增参数时,所填写的 Data ID 值必须要和启动类上 @NacosPropertySource 注解中的 dataId 值是一致的;而且在定义配置内容的时候,配置的名字必须要和 Controller 中定义的名字保持一致。二者中无论哪一个名字不匹配,在启动项目时都会报找不到配置的错误。

到这里,代码和配置都已经准备完毕了,我们启动一下项目看看具体效果... 项目启动后,我们在 Nacos 管理页面左侧找到服务管理下的服务列表,打开服务列表就可以看到我们的项目成功的注册进了 Nacos。

SpringBoot怎么集成Nacos实现注册中心与配置中心

接下来,我们在浏览器访问Http://localhost/test/productName,可以看到我们新增的配置被成功的取了出来。如果此时配置需要改变,我们只需要在Nacos 的后台修改对应的配置,然后刷新一下页面就可以看到配置已经动态更新了

SpringBoot怎么集成Nacos实现注册中心与配置中心

SpringBoot怎么集成Nacos实现注册中心与配置中心

关于“SpringBoot怎么集成Nacos实现注册中心与配置中心”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网精选频道,小编每天都会为大家更新不同的知识点。

--结束END--

本文标题: SpringBoot怎么集成Nacos实现注册中心与配置中心

本文链接: https://www.lsjlt.com/news/349387.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • c#中label控件怎么放大
    在 c# 中放大 label 控件有三种方法:直接设置字体大小(fontsize 属性)缩放整个标签控件(scale() 方法)启用自动调整大小并设置字体大小(autosize 属性,f...
    99+
    2024-05-14
    c#
  • 如何对 Golang 中的数据库查询进行分页?
    答:是,golang 中可以使用 limit 和 offset 关键字对数据库查询进行分页。步骤如下:确定每页要显示的记录数(pagesize)。计算偏移量(offset),从 0 开始...
    99+
    2024-05-14
    分页 数据库查询 mysql golang
  • c#中label控件Text怎么隐藏
    在c#中隐藏label控件文本可以采用以下两种方法:设置控件的visibility属性为hidden,控件及文本将从界面中完全隐藏。设置控件的text属性为空字符串,控件仍可见,但文本将...
    99+
    2024-05-14
    c#
  • C++ 生态系统中流行库和框架的学习资源推荐
    c++++生态系统中的热门库和框架包括:boost c++库和框架:提供广泛的通用性c++库。stl标准模板库:c++标准库参考。qt框架:跨平台gui开发工具。tensorflow:深...
    99+
    2024-05-14
    c++ 生态系统 标准库
  • c#中label控件导入图片怎么适应大小
    在 c# 中调整 label 控件中图像大小的方法:1. 设置 image 对象的 width 和 height 属性;2. 指定 sizemode 属性;3. 调整 label 控件的...
    99+
    2024-05-14
    c#
  • PHP设计模式:与设计原则的关系
    PHP 设计模式:与设计原则的关系 引言 设计模式是软件开发中的可重用解决方案,用于解决常见的问题。它们基于 SOLID(单一职责、开放-封闭、依赖倒置、接口隔离、里氏替换)等设计原则...
    99+
    2024-05-14
    php 设计模式 lsp
  • c#怎么添加dll
    c# 中添加 dll 的方法有:使用项目引用:在解决方案资源管理器中,右键单击项目并选择“添加”>“引用”,然后导航到 dll 文件并单击“添加”按钮。使用 dllimport:导...
    99+
    2024-05-14
    c#
  • c#程序自启动怎么设置
    c# 程序的自启动方法有三种:注册表:在指定注册表项下创建新值,并将其设置为程序可执行文件路径。任务计划程序:创建一个新任务,并在触发器和动作部分分别指定登录时或特定时间触发,以及启动程...
    99+
    2024-05-14
    c#
  • c#怎么调用dll文件
    可在 c# 中轻松调用 dll 文件:引用 dll(使用 dllimport 特性)定义与 dll 函数签名匹配的函数原型调用 dll 函数(如同 c# 函数)附加技巧:使用 chars...
    99+
    2024-05-14
    c#
  • 如何构建 Golang RESTful API,并实现 CRUD 操作?
    通过创建 golang 项目并安装必要的包,我们可以构建一个功能齐全的 restful api。它使用 mysql 数据库进行 crud 操作:1. 创建和连接数据库;2. 定义数据结构...
    99+
    2024-05-14
    go crud mysql git golang
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作