springboot集成nacos的配置方法

 更新时间:2020年03月30日 09:41:48   作者:SingleOneMan  
这篇文章主要介绍了springboot集成nacos的配置方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

本文介绍了springboot集成nacos的配置方法,分享给大家,具体如下:

nacos仓库:https://github.com/alibaba/nacos

nacos介绍文档:https://nacos.io/zh-cn/docs/architecture.html

nacos使用例子:https://github.com/nacos-group/nacos-examples

springboot配置-集成nacos,例子代码下载

springboot-nacos-consumer

springboot-nacos

1.安装信息

导入nacos-mysql.sql

启动nacos 控制台

2.配置发布与获取

1)配置发布2种方式:调用openapi;控制台操作

2)新建命名空间

3)不同namespace,不同dataId,不同groupId获取配置情况

@NacosPropertySource中指定dataId,groupId

//加载 dataId 为 example 的配置源,并开启自动更新
//@NacosPropertySource(dataId = "example",autoRefreshed = true)
//加载不同groupId的配置
//@NacosPropertySource(dataId = "example", groupId ="test",autoRefreshed = true)
//加载不同dataId的配置
@NacosPropertySource(dataId = "example2",autoRefreshed = true)

配置文件中指定namespace 的ID

#根据命名空间ID,加载不同namespace的配置
#nacos.config.namespace=a8128f5b-7f87-42c5-9ffd-c4f17da7ee34

测试:

3.服务注册与消费服务

1)服务注册

配置文件指定:

server.port= 8080
#访问的根路径
server.context-path=/springboot-nacos
#Nacos服务名
spring.application.name=UserService
#nacos服务端的地址
nacos.config.server-addr=127.0.0.1:8848
#discovery地址
nacos.discovery.server-addr=127.0.0.1:8848
#根据命名空间ID,加载不同namespace的配置
#nacos.config.namespace=a8128f5b-7f87-42c5-9ffd-c4f17da7ee34

服务启动时注册:

@SpringBootApplication
public class SpringbootNacosApplication {
  @NacosInjected
  private NamingService namingService;
  @Value("${server.port}")
  private int serverPort;

  @Value("${spring.application.name}")
  private String applicationName;
  //curl -X PUT 'http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=xxx&ip=127.0.0.1&port=8080'
  @PostConstruct
  public void registerInstance() throws NacosException {
    if(CollectionUtils.isEmpty(namingService.getAllInstances(applicationName))){
      namingService.registerInstance(applicationName,"127.0.0.1",serverPort);
    }
  }
  public static void main(String[] args) {
    SpringApplication.run(SpringbootNacosApplication.class, args);
  }

}


2)服务消费

通过NamingService发现选择服务

 Instance instance = namingService.selectOneHealthyInstance("UserService");

通过RestTemplate调用获取结果

到此这篇关于springboot集成nacos的配置方法的文章就介绍到这了,更多相关springboot集成nacos内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java中的SynchronousQueue阻塞队列使用代码实例

    Java中的SynchronousQueue阻塞队列使用代码实例

    这篇文章主要介绍了Java中的SynchronousQueue阻塞队列使用代码实例,SynchronousQueue是无缓冲区的阻塞队列,即不能直接向队列中添加数据,会报队列满异常,需要的朋友可以参考下
    2023-12-12
  • java设计模式之工厂方法模式

    java设计模式之工厂方法模式

    这篇文章主要为大家详细介绍了java设计模式之工厂方法模式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-08-08
  • SpringBoot+docker环境变量配置详解

    SpringBoot+docker环境变量配置详解

    这篇文章主要介绍了SpringBoot+docker环境变量配置详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • SpringBoot中Bean拷贝及工具类封装的实现

    SpringBoot中Bean拷贝及工具类封装的实现

    本文主要介绍了SpringBoot中Bean拷贝及工具类封装的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-05-05
  • 详解JNA中的回调方法

    详解JNA中的回调方法

    这篇文章主要介绍了JNA中的回调方法,主要包括JNA 中的 Callback,callback 的应用,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-05-05
  • JAVA中常用的设计模式:单例模式,工厂模式,观察者模式

    JAVA中常用的设计模式:单例模式,工厂模式,观察者模式

    设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。
    2020-04-04
  • Java日志框架打印应用程序日志代码的执行情况分析

    Java日志框架打印应用程序日志代码的执行情况分析

    在配置INFO日志级别时,日志器(logger)中debug级的日志代码仍会被执行,只是是否输出取决于配置的日志级别,本文基于Java 1.8、SLF4J 1.7.25和Log4j 2.20.0进行实验,详述了日志框架处理日志代码的机制,感兴趣的朋友一起看看吧
    2024-10-10
  • java 在观察者模式中使用泛型T的实例

    java 在观察者模式中使用泛型T的实例

    下面小编就为大家带来一篇java 在观察者模式中使用泛型T的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • Netty分布式ByteBuf的分类方式源码解析

    Netty分布式ByteBuf的分类方式源码解析

    这篇文章主要为大家介绍了Netty分布式ByteBuf的分类方式源码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03
  • 常用的Spring Boot调用外部接口方式实现数据交互

    常用的Spring Boot调用外部接口方式实现数据交互

    Spring Boot提供了多种调用外部接口的方式,可以方便地实现与其他系统的数据交互,提高系统的可扩展性和数据共享能力,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2023-04-04

最新评论