nacos 系列(config) - spring cloud 集成

需要依赖nacos服务端, 如果还没有搭建nacos服务端的, 请先将服务端跑起来

cloud版的config客户端和boot版不太一样, 不需要新增和修改注解, 代码侵入年更小, 只要加上jar包和配置就好了cloud 版的配置和boot不一样, 多几个层级

1. 修改pom.xml

pom文件加入nacos的cloud版config组件

<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
	<version>0.1.1.RELEASE</version>
</dependency>

2. 启动类注解(不需要)

cloud版启动类不需要修改任何东西

3. 配置文件修改

注意: 需要在bootstrap.properties修改, 而不是application.properties

配置文件加上nacos服务端的地址(只要加上server-addr就能跑了)

spring.cloud.nacos.config.server-addr=nacos服务端地址:8848
spring.application.name=应用名称
# 指定配置的后缀,支持 properties、yaml、yml,默认为 properties
spring.cloud.nacos.config.file-extension=properties

下面是一些nacos配置(进阶用)
nacos 系列(config) - spring cloud 集成

4. 配置参数注入

  • 直接用spring的@Value即可
  • 不能使用@NacosValue(我尝试用过, 取不到值)

通过 Spring Cloud 原生注解 @RefreshScope实现配置自动更新

  • 类不能是final

5. 命名空间

nacos设计上是有命名空间这个概念的

  • 个人理解命名空间是分开发, 测试, 生产的环境区分
  • 组Group是集群或这地域区分
    nacos 系列(config) - spring cloud 集成但是我试了各种情况, 发现都取不到dev中的配置…
    以下一种是用命名空间名称, 一种是用命名空间的id, 都不行…
    spring.cloud.nacos.config.namespace=dev
    spring.cloud.nacos.config.namespace=3ad2b8b5-e443-4053-8c02-2c322280dfa8

有知道的同学请留言下

相关文章:

  • 2021-04-28
  • 2021-11-02
  • 2022-02-18
  • 2021-09-20
  • 2021-11-21
  • 2021-08-03
  • 2021-06-09
猜你喜欢
  • 2021-10-08
  • 2021-07-11
  • 2021-06-27
  • 2021-12-16
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案