首页 > 编程语言 >java客户端访问nacos配置使用总结

java客户端访问nacos配置使用总结

时间:2023-12-28 17:00:14浏览次数:39  
标签:java String spring nacos private starter cloud 客户端

客户端访问nacos配置:

父工程:

com.alibaba.cloud
spring-cloud-alibaba-dependencies
2021.0.5.0
pom
import

子工程:

    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-bootstrap</artifactId>
        <version>3.1.0</version>
    </dependency>

pom.yml
spring:
application:
name: userservice
profiles:
active: dev # 环境
cloud:
nacos:
server-addr: 127.0.0.1:8848 # nacos地址
config:
file-extension: yaml # 文件后缀名
namespace: 0223cc90-7cf0-4f11-a00d-fae7f81ea892
group: DEFAULT_GROUP
username: nacos
password: nacos

5.application.yml
cloud:
nacos:
config:
import-check:
enabled: false

6.配置一个对应要访问nacos yaml文件的类:
@Data
@Component
@ConfigurationProperties(prefix = "pattern")
public class PatternProperties {
private String dateformat;
private String mysqldb;
private String username;
private String password;
}

  1. 2种读取nacos配置文件数据的方法:
    @Value("${pattern.mysqldb}")
    private String dbip;

    @GetMapping("dbip")
    public String dbip(){
    return dbip;
    }

    方法2:PatternProperties 类读取nacos
    @ConfigurationProperties(prefix = "pattern")
    public class PatternProperties {
    private String dateformat;
    private String mysqldb;
    private String username;
    private String password;
    }

controller:
@Autowired
private PatternProperties properties;

@ApiOperation("Config")
@GetMapping("Config")
public Object Config(){

    return  properties;
}

9.数据热更新的2种方式:
最终的目的,是修改nacos中的配置后,微服务中无需重启即可让配置生效,也就是配置热更新。
方式1:
在@Value注入的变量所在类上添加注解@RefreshScope

方式2:
使用@ConfigurationProperties注解代替@Value注解。
在user-service服务中,添加一个类,读取patterrn.dateformat属性

10.【注意事项】:
spring-cloud-starter-alibaba-nacos-config 模块移除了 spring-cloud-starter-bootstrap 依赖,如果你想以旧版的方式使用,你需要手动加上该依赖,现在推荐使用spring.config.import方式引入配置。

如果你想使用bootstrap来进行配置的话,就在pom.xml文件里面添加该依赖即可,然后按照官方文档进行配置:

在pom.xml文件下引入依赖

org.springframework.cloud
spring-cloud-starter-bootstrap
3.1.0

pom.xml demo:

    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-bootstrap</artifactId>
        <version>3.1.0</version>
    </dependency>

标签:java,String,spring,nacos,private,starter,cloud,客户端
From: https://www.cnblogs.com/chenshaojun2008/p/17933092.html

相关文章

  • java单元测试
    一、单元测试1、概述 2、优缺点 二、快速入门   三、JUNIT的常用注解 ......
  • 无涯教程-Java泛型 - 无限类型擦除
    如果使用无限制的类型参数,则JavaCompiler会将通用类型的类型参数替换为对象。packagecom.learnfk;publicclassGenericsTester{publicstaticvoidmain(String[]args){Box<Integer>integerBox=newBox<Integer>();Box<String>stringBox=newBo......
  • 开源免费又好用的中式数据报表:UReport2是一款高性能的架构在Spring之上纯Java报表引
    北润乾、南帆软,数加发力在云端。uReport身何安?中式报表真开源。报表江湖之中,uReport安身立命的产品品类定位是什么?说来很简单,uReport的价值在于填补了这样一个市场空白:开源免费又好用的中式数据报表UReport2是一款高性能的架构在Spring之上纯Java报表引擎,通过迭代单元格可以......
  • java注解
    一、注解概述 二、JDK内置注解1、@Override 2、@Deprecated 3、@SuppressWarnings 4、@Functionalinterface 三、元注解1、概念 2、@Retention 3、@Target 四、自定义注解  五、注解的注意事项  六、通过注解运行指定类中的指......
  • Java反射
    一、获取Class对象1、调用运行时类的.class属性ClassstuClass=Student.class;2、调用运行时类的getClass方法Students=newStudent();ClassstuClass=s.getClass();3、调用Class类的静态方法:forName(StringclassPath)【该种方法用的多】ClassstuClass=Clas......
  • java-异常处理
    在Java中,异常是指程序在运行过程中遇到的错误或异常情况,它可能导致程序无法正常执行。Java提供了异常处理机制,允许我们捕获和处理这些异常,以便程序能够更加健壮地运行。Java中的异常分为两种类型:CheckedException(受检异常)和UncheckedException(非受检异常)。CheckedException(受......
  • JavaScript | Variable、Function、Module、Class (一)
    函数函数声明functionsayHello(){return"HelloJavaScript!!"}函数表达式letsayHello=function(){return"HelloJavaScript!!"}函数、变量提升:函数和变量都会被提升,且函数会被优先提升;提升的意思是只要有声明定义,那么先调用都可以。因为JS会把定义放到......
  • Java 原型模式
    原型模式是一种创建型设计模式,用于在保证性能的情况下创建新的对象实例。原型模式允许一个对象再创建另外一个可定制的对象,而无需知道创建的细节。其工作原理是通过拷贝实现对象创建,即clone()。但是我们通过new也能创建一个属性一样的对象,两者的区别是什么呢?new操作符:用于创建......
  • nacos2.3.0打包镜像与启动
    简介:紧接上一篇nacos支持postgresql版本一、nacos镜像制作1.1、nacos官网镜像制作工具拉取:https://github.com/nacos-group/nacos-docker.git,拉取后目录结构展示: 1.2、进入build目录,将打包好的nacos-server-2.3.0.tar.gz放到该目录 1.3、修改Dockerfile FROMcen......
  • Linux 服务器 Java 进程消失问题怎么解决
    当您在使用NginxWebUI进行反向代理时遇到504错误,这通常是由于Nginx无法在合理的时间内完成请求处理。504错误是Nginx的通用错误,表示"网关超时"。以下是可能导致此问题的原因以及相应的解决方案:1.后端服务器问题原因:后端服务器可能由于各种原因无法及时响应。解决方案:检查后端服务......