• 项目示例 - 4.配置中心 - 1.Nacos


    项目示例 - 4.配置中心 - 1.Nacos

    关联知识

    • 分布式微服务 - 4.配置中心 - 2.Nacos

    内容提要

    • 基本使用

    基本使用

    1. 建Module:微服务起名为nacos-config
    2. 改pom:引入以下依赖
        <dependencies>
            
            <dependency>
                <groupId>com.alibaba.cloudgroupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-configartifactId>
            dependency>
            <dependency>
                
                <groupId>org.springframework.cloudgroupId>
                <artifactId>spring-cloud-starter-bootstrapartifactId>
            dependency>
            
            <dependency>
                <groupId>com.alibaba.cloudgroupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discoveryartifactId>
            dependency>
    
            <dependency>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-starter-webartifactId>
            dependency>
        dependencies>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    1. 写yml:在resources目录下创建application.yml和bootstrap.yml文件,并做以下配置
    # application.yml
    server:
      port: 8001
    
    spring:
      profiles:
        active: test
      cloud:
        nacos:
          discovery:
            # nacos的地址
            server-addr: localhost:8848
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    # bootstrap.yml
    spring:
      application:
        name: nacos-config
      cloud:
        nacos:
          config:
            # nacos地址
            server-addr: localhost:8848
            # 可配置namespace和group
            group: DEFAULT_GROUP
            # 配置文件的类型
            file-extension: yml
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    1. 主启动:在src下创建如下主启动类
    package learn.demo;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    public class NacosConfig {
    
        public static void main(String[] args) {
            SpringApplication.run(NacosConfig.class, args);
        }
    
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    1. 业务构建:创建如下controller类
    package learn.demo.controller;
    
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.cloud.context.config.annotation.RefreshScope;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    @RequestMapping("/nacos/config/")
    @RefreshScope // 配合@Value来刷新属性值
    public class ConfigController {
        @Value("${spring.application.name} ${server.port}")
        private String serverInfo;
        @Value("${config.info}")
        private String configInfo;
    
        @GetMapping("test")
        public String test() {
            return serverInfo+"\t"+configInfo;
        }
    
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    1. 配置文件:启动nacos,并在配置列表中创建配置,Data Id为nacos-config-test.yml、Group为DEFAULT_GROUP、配置格式为yaml,配置内容如下
    config:
        info: nacos-config-test.yml version=1
    
    • 1
    • 2
    1. 测试:
      1. 启动本微服务,浏览器访问localhost:8001/nacos/config/test 接口,能正常返回信息
      2. 在nacos中修改配置文件内容,不重启微服务的情况下再次访问接口,接口返回信息也同步更改
        .
  • 相关阅读:
    Golang 中的 errors 包详解:返回自定义 error 类型
    2023秋招面试准备
    windows docker desktop配置国内镜像仓库
    LeetCode 953. Verifying an Alien Dictionary
    c++实现建造者模式
    网络安全(黑客)自学
    Mybatis的二级缓存 (Redis方式)
    JavaEE初阶 01 计算机是如何工作的
    浅谈下mvc和mvp、mvvm到mvvm+Jetpack
    15.编写自动化测试(下)
  • 原文地址:https://blog.csdn.net/keipace/article/details/136700977