nacos配置在代码中引用的方法讲解

 更新时间:2022年12月10日 09:38:41   作者:jjw_zyfx  
这篇文章主要介绍了nacos配置在代码中如何引用,如果主配置中配置的内容和拓展配置的内容重复则按主配置的配置 ,如果拓展配置中的内容和另一个拓展配置中的内容重复,则按下标大的配置作为最终的配置,对nacos配置代码引用相关知识感兴趣朋友一起看看吧

1、在代码的模块服务中安装nacos 配置依赖

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>

2、在nacos配置中心中进行服务配置 注意不是模块名,是服务名称,即在bootstrap.yaml中配置的服务名称

3、在模块的bootstrap.yml文件中添加配置信息

# 注意前边是
spring
	cloud
		nacos
			config:
		    	server-addr: 127.0.0.1:8848  # 即服务发现的地址 
		    	# 如果不是public则需要再加一行指定具体的命名空间。

4、使用@Value(${})使用配置

@Value("${common.name}")
private String common_name;

@GetMapping(value = "/configs")
public String getValue(){
    return common_name;
}

获取动态的配置信息

代码如下:

 @Value("${common.name}")  // 这种方法不能获取动态的配置信息
    private String common_name;

 @Autowired
 private ConfigurableApplicationContext applicationContext;  // 这种方式可以获取动态的配置信息

 @GetMapping(value = "/configs")
 public String getValue(){
     // return common_name;
     return applicationContext.getEnvironment().getProperty("common.name");
 }

扩展配置

1、首先在nacos中配置两个拓展的配置文件 配置文件1

配置文件2

注意这两个文件的配置内容的变化 2、在bootstrap.yaml文件中添加如下配置

config:
  server-addr: 127.0.0.1:8848
   file-extension: yaml # 原配置 或者说是主配置
   group: DEFAULT_GROUP  
   ext-config[0]:  # 拓展配置1
     data-id: ext-config-common01.yaml
     group: COMMON_GROUP
     refresh: true  #  动态刷新
   ext-config[1]:  # 拓展配置2
     data-id: ext-config-common02.yaml
     group: COMMON_GROUP
     refresh: true

3、代码引用:

    @Autowired
    private ConfigurableApplicationContext applicationContext;

    @GetMapping(value = "/config")
    public String getValue(){
        String name = applicationContext.getEnvironment().getProperty("common.name");
        String addr = applicationContext.getEnvironment().getProperty("common.addr");
        return name+addr;
    }

4、最终的输出结果:

5、对结果的总结:

5.1、如果主配置中配置的内容和拓展配置的内容重复则按主配置的配置

5.2、如果拓展配置中的内容和另一个拓展配置中的内容重复,则按下标大的配置作为最终的配置

到此这篇关于nacos配置在代码中如何引用的文章就介绍到这了,更多相关nacos配置代码引用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 使用maven项目pom.xml文件配置打包功能和静态资源文件自带版本号功能

    使用maven项目pom.xml文件配置打包功能和静态资源文件自带版本号功能

    在Maven项目中,通过pom.xml文件配置打包功能,可以控制构建过程,生成可部署的包,同时,为了缓存控制与版本更新,可以在打包时给静态资源文件如JS、CSS添加版本号,这通常通过插件如maven-resources-plugin实现
    2024-09-09
  • java类加载器和类反射使用示例

    java类加载器和类反射使用示例

    这篇文章主要介绍了java类加载器和类反射使用示例,需要的朋友可以参考下
    2014-03-03
  • springboot优雅获取前端参数的方法详解

    springboot优雅获取前端参数的方法详解

    现在的项目基本上都是前后端分离的项目,如何打通前后端,接收前端传过来的参数呢,这篇文章小编就来和大家详细介绍一下springboot如何优雅的获取前端参数吧
    2024-03-03
  • JNI语言基本知识

    JNI语言基本知识

    JNI是Java Native Interface的缩写,它提供了若干的API实现了Java和其他语言的通信(主要是C&C++)。接下来通过本文给大家分享jni 基础知识,感兴趣的朋友一起看看吧
    2017-10-10
  • MyBatis-plus批量插入的通用方法使用

    MyBatis-plus批量插入的通用方法使用

    mybatis-plus的IService接口默认提供saveBatch批量插入,也是唯一一个默认批量插入,在数据量不是很大的情况下可以直接使用,本文带你详细了解MyBatis-plus 批量插入的通用方法及使用方法,需要的朋友可以参考一下
    2023-04-04
  • mybatis打印的sql日志不写入到log文件的问题及解决

    mybatis打印的sql日志不写入到log文件的问题及解决

    这篇文章主要介绍了mybatis打印的sql日志不写入到log文件的问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • 了解JAVA并发工具常用设计套路

    了解JAVA并发工具常用设计套路

    这篇文章主要介绍了了解JAVA并发工具常用设计套路,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,,需要的朋友可以参考下
    2019-06-06
  • 如何把VS Code打造成Java开发IDE

    如何把VS Code打造成Java开发IDE

    这篇文章主要介绍了如何把VS Code打造成Java开发IDE,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • Spring Boot项目Jar包加密实战教程

    Spring Boot项目Jar包加密实战教程

    本文详细介绍了如何在Spring Boot项目中实现Jar包加密,我们首先了解了Jar包加密的基本概念和作用,然后学习了如何使用Spring Boot的Jar工具和第三方库来实现Jar包的加密和解密,感兴趣的朋友一起看看吧
    2024-02-02
  • Java CompletableFuture 异步超时实现深入研究

    Java CompletableFuture 异步超时实现深入研究

    这篇文章主要为大家介绍了Java CompletableFuture 异步超时实现深入研究,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02

最新评论