SpringCloudAlibaba-Nacos配置中心

开发环境

开发工具:IDEA 2021.3.2

JDK版本:JDK1.8

Maven版本:Maven3.8

SpringCloud版本:Hoxton.SR12

SpringCloudAlibaba版本:2.2.7.RELEASE

SpringBoot版本:2.3.12.RELEASE

Nacos版本:2.0.3

准备Nacos 

Nacos官方文档(推荐阅读)

下载安装包(下载速度慢,不推荐)

①GitHub下载nacos2.0.3安装包

 

下载源码(推荐)

①根据Nacos官方文档,首先克隆源码(github太慢,使用gitee Nacos镜像)

# -b 后面带的是nacos版本
git clone -b 2.0.3 https://gitee.com/mirrors/Nacos.git

②克隆完之后,执行以下命令构建项目

cd nacos/
 
mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U  

③构建完项目之后,进入distribution\target\distribution\target\nacos-server-2.0.3\nacos\bin目录,下打开cmd,执行 startup.cmd -m standalone 命令启动nacos-server

cd distribution\target\nacos-server-2.0.3\nacos\bin

startup.cmd -m standalone

⑤浏览访问http://localhost:8848/nacos/index.html,登录客户端默认账号密码都是nacos

创建项目

创建spring cloud项目

以Nacos为注册中心,搭建spring cloud项目

创建子模块

①创建maven子模块,命名为cloud-provider-nacos-config8011

②导入依赖

    <dependencies>
        <!--nacos配置中心 依赖-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
        <!--nacos注册与发现中心 依赖-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!--spring boot依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
    </dependencies>

③创建bootstrap.yml配置文件

server:
  port: 8011

spring:
  application:
    name: cloud-provider-nacos-config
  cloud:
    nacos:
      #注册与发现中心
      discovery:
        server-addr: 127.0.0.1:8848
      #配置中心
      config:
        server-addr: 127.0.0.1:8848
        prefix: ${spring.application.name}
        file-extension: yaml          #配置文件格式(只支持yaml和properties)

④创建application.yml配置文件

spring:
  profiles:
    active: dev

⑤创建启动类,添加@EnableDiscoveryClient注解

@EnableDiscoveryClient
@SpringBootApplication
public class ProviderNacosConfig8011 {
    public static void main(String[] args) {
        SpringApplication.run(ProviderNacosConfig8011.class, args);
    }
}

⑥创建controller,添加@RefreshScope注解

@RefreshScope
@RestController
@RequestMapping("provider")
public class ProviderController {
    //  nacos配置文件里面的info的值
    @Value("${info}")
    private String info;

    @GetMapping("getInfo")
    public String getInfo() {
        return info;
    }
}

⑦浏览器打开http://localhost:8848/nacos/index.html#/login,登录客户端,添加配置

 ⑧新建配置,根据Nacos官方文档中给的的Data ID的完整格式${prefix}-${spring.profiles.active}.${file-extension},填写Data ID

 ⑨填写配置内容并发布

info: cloud-provider-nacos-config-8011

测试

启动Nacos注册中心

 

启动cloud-provider-nacos-config8011

 

测试

①浏览器访问http://localhost:8011/provider/getInfo,获取配置文件中的info的值

②修改info的值

info: cloud-provider-nacos-config-修改之后的值

③再次访问http://localhost:8011/provider/getInfo,获取info的值

总结

Nacos-config实现了获取配置文件和自动刷新的功能。把Spring Cloud Config的获取配置文件和Spring Cloud Bus的刷新配置文件两个功能融合在了一起,中间还省了发送请求来刷新配置文件的步骤。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值