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

Nacos配置中心使用(Spring Cloud版)

目标

向项目中集成Nacos配置。原项目是一个SpringBoot项目。这里假设我们无法修改原有项目的SpringBoot版本。

注意

在不动SpringBoot版本的前提下,根据SpringBoot的版本,确定Spring Cloud和Nacos版本。Nacos版本其实就是Spring Cloud Alibaba版本。在Nacos的文档里面有一个表格,确定应该使用的Nacos具体版本。
Spring Cloud Alibaba版本
例如:我这里使用的是SpringBoot2.6.3,这应该使用Spring Cloud Alibaba2021.0.1.0版本。如果你使用的SpringBoot版本没有在Nacos官方文档里面出现,那就选一个与你使用的SpringBoot版本接近的Nacos版本吧。

步骤

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.6.3</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>cn.com.xxx</groupId><artifactId>xxxx</artifactId><version>0.0.1-SNAPSHOT</version><name>xxx</name><description>xxxx project for Spring Boot</description><properties><java.version>1.8</java.version><spring-cloud.version>2021.0.1</spring-cloud.version><spring-cloud-alibaba.version>2021.0.1.0</spring-cloud-alibaba.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--配置中心 nacos--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId><version>${spring-cloud-alibaba.version}</version></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId><version>${spring-cloud-alibaba.version}</version></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-bootstrap</artifactId></dependency></dependencies><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement>
</project>

bootstrap.yml

spring:application:name: myapp#nacos组件cloud:nacos:discovery:# 服务注册地址server-addr: ${NACOS_URL:https://xxx.xxxx.com.cn}namespace: ${NACOS_NAME_SPACE:123412437-2343-423d-sdads3-zw3r3}username: ${NACOS_NAME:xxx}password: ${NACOS_PASS:xxx}group: ${SPRING_PROFILES_ACTIVE:dev}config:# 配置中心地址server-addr: ${NACOS_URL:https://xxxx.xxxx.com.cn}namespace: ${NACOS_NAME_SPACE:123412437-2343-423d-sdads3-zw3r3}file-extension: yamlusername: ${NACOS_NAME:sss}password: ${NACOS_PASS:xxxx}group: ${SPRING_PROFILES_ACTIVE:dev}
server:port: 8080

HelloController.java

@RefreshScope
@RestController
@RequestMapping("/hello")
public class HelloController {@Value("${useLocalCache:false}")private boolean useLocalCache;@RequestMapping("/nacos/get")public boolean get() {return useLocalCache;}
}

Nacos配置

nacos配置

myapp-dey.yml

useLocalCache:true

具体配置

测试

测试结果
现在结果为true,于预期结果一直,Spring读到了Nacos里面的配置数据。
接下来,将nacos里面的结果修改成false:
修改成false
再用Postman调用一下,查看Spring读到的配置数据:
测试结果
Spring读到了Nacos里面的配置。到此,Nacos集中配置就能够正常使用了。

总结

这里是先确定使用的SpringBoot版本,然后,进一步确定Spring Cloud和Spring Cloud Alibaba的版本。然后,就可以使用Nacos了,最好再考虑一下使用的Nacos服务端版本。

参考

  • Nacos Spring Cloud 快速开始
  • 版本说明
http://www.lryc.cn/news/93669.html

相关文章:

  • STM32F407硬件I2C实现MPU6050通讯(CUBEIDE)
  • HTML5 语义元素(一)页面结构
  • 嵌套滚动实践:onInterceptTouchEvent与NestedScrolling【实用为准】
  • Redis入门 - 5种基本数据类型
  • mybatis-plus用法(一)
  • 源码安装包管理
  • Vue|获取表单数据
  • 微信小程序入门学习02-TDesign中的自定义组件
  • 【linux kernel】linux media子系统分析之media控制器设备
  • Scala--03
  • 【MongoDB】--MongoDB高级功能
  • C# new与malloc
  • 微软MFC技术简明介绍
  • 汽车电子Autosar之车载以太网
  • MSP430_C语言例程注释详
  • Vb+access库存管理系统(论文+开题报告+源代码+目录)
  • Java 数组
  • CSDN 编程竞赛五十八期题解
  • Unity入门6——光源组件
  • C语言之动态内存分配(1)
  • AIGC新时代,注意政策走向,产业方向,拥抱可信AI。需要了解基本理论,基础模型,前沿进展,产品应用,以及小小的项目复现
  • 如何白嫖一年CSDN会员?618活动!亲测有效!!!
  • 微服务: 00-rabbitmq出现的异常以及解决方案
  • Vue3与Vue2比较
  • 如何对待工作中的失误?
  • 使用css3如何实现一个文字打印效果
  • 【雕爷学编程】Arduino动手做(115)---HB100多普勒雷达模块
  • 深度学习笔记之Transformer(一)注意力机制基本介绍
  • 基于SpringBoot的SSM整合案例 -- SpringBoot快速入门保姆级教程(四)
  • 占据80%中国企业出海市场,亚马逊云科技如何为出海客户提供更多资源和附加值