栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【Nacos学习】三、Nacos作为配置中心

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Nacos学习】三、Nacos作为配置中心

启动Nacos-Server

windows系统启动方式为,进入nacosnacosbin目录,双击startup.cmd文件。

新建配置文件

浏览器访问 http://127.0.0.1:8848/nacos/index.html#/login,账户密码为nacos/nacos,

进入【配置列表】菜单项,点击右上角【+】号新建配置,如下图所示

Data ID

首先是Data ID的命名规则:服务名称-开发环境.后缀名拼接起来

注意
1、服务名称 后面需要添加一个横杠作为连接符
2、开发环境 后面需要添加一个点作为连接符

如果不区分开发环境则前面的连接符也不写。

高级的一点即为:${prefix}-${spring.profile.active}.${file-extension},prefix对应服务名称;spring.profile.active对应开发环境,比如dev,pro等;file-extension对应后缀名,比如properties和yaml;

Group

一般默认为【DEFAULT_GROUP】

描述

配置格式

与命名Data ID时的后缀要对应起来,比如Data ID为nacos-config.yml则配置格式选择【YAML】

配置内容

填写需要的配置内容即可,需要注意的是如果配置格式选择【YAML】则配置内容的格式也要为【YAML】的书写格式,否则会报错java.lang.IllegalArgumentException找不到该配置。

示例

 写完后点击右下角的【发布】按钮即可。

创建项目

创建名为【nacos-config】的子模块用于测试读取配置。

1、添加依赖

    org.springframework.cloud
    spring-cloud-starter-alibaba-nacos-config
2、pom文件如下


    4.0.0
    
        nacos
        com.kongcheng
        0.0.1-SNAPSHOT
    

    com.kongcheng
    nacos-config
    0.0.1-SNAPSHOT
    nacos-config
    Demo project for Spring Boot

    
        1.8
    

    
        
            org.springframework.cloud
            spring-cloud-starter-alibaba-nacos-discovery
        
        
        
            org.springframework.cloud
            spring-cloud-starter-alibaba-nacos-config
        
    

    
        
            
                org.springframework.boot
                2.3.0.RELEASE
                spring-boot-maven-plugin
            
        
    


3、配置文件

创建配置文件名为bootstrap.yml

spring:
  application:
    name: nacos-config
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848 # Nacos作为服务注册中心地址
      config:
        server-addr: 127.0.0.1:8848 # Nacos作为配置中心地址
        file-extension: yml # 指定yaml格式的配置

注意:不能使用原来的application.yml作为配置文件,而是新建一个bootstrap.yml作为配置文件

配置文件优先级(由高到低):
bootstrap.properties -> bootstrap.yml -> application.properties -> application.yml

4、主入口

添加@EnableDiscoveryClient注解用于开启服务注册发现

5、创建对外接口来从nacos中读取配置

新建TestcController文件,通过@Value(key)读取配置,如下:

import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RefreshScope
public class TestController {

    @Value("${nacos.config}")
    private String config;

    @RequestMapping("/getValue")
    public String getValue() {
        return config;
    }
}
6、启动测试

首先启动Nacos-server,然后启动nacos-config项目。

启动完成后访问:http://localhost:18203/getValue

 读取配置文件成功。

7、动态更新配置文件

修改配置文件如下

 再次访问:http://localhost:18203/getValue

可以看到我通过Nacos-server的控制台进行配置的修改,客户端服务【nacos-config】也相应的进行热更新。 

项目源码

https://gitee.com/dukeLiuyu/nacos

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/749842.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号