Spring Cloud Alibaba实战(3) - nacos作为配置中心

本文详细介绍了如何使用Nacos作为Spring Cloud应用的配置中心,包括在Nacos中编写配置、创建Spring Boot应用并导入依赖、修改配置文件以及动态刷新配置的具体步骤。
摘要由CSDN通过智能技术生成

Spring Cloud版本是Greenwich.RELEASE
Springboot版本是2.1.9.RELEASE
Spring Cloud Alibaba版本是2.1.0.RELEASE

nacos除了能作为注册中心以外,还可以作为配置中心。

01 在nacos编写配置

1)打开nacos网址,进入配置列表页面,点击“+”号,新增应用配置
在这里插入图片描述
2)输入Data ID(注意这个必须要与应用的spring.application.name保持一致),Group我们就直接使用默认值,Format选择Properties,Configuration Content跟我们写应用的配置文件一样即可,最后点击Publish即可。
在这里插入图片描述

02 创建应用

1)创建一个springboot应用,在pom.xml文件中导入依赖

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>Greenwich.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2.1.0.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

2)将application.properties文件名字修改为bootstrap.properties
在这里插入图片描述
3)在bootstrap.properties中添加一些配置

# spring.application.name和nacos中配置的Data ID要保持一致
spring.application.name=nacos-config
server.port=8100
# nacos注册中心的地址
spring.cloud.nacos.config.server-addr=127.0.0.1:8848

4)使用nacos的配置
@RefreshScope注解的作用是当我们在nacos中修改配置信息时,可以动态的修改该类中@Value的配置信息。

@RefreshScope
@RestController
public class ConfigController {
    @Value("${my.name:}")
    private String name;

    @GetMapping("/name")
    public String getName() {
        return "name: " + name;
    }
}

03 测试

在这里插入图片描述
注意:这里我的端口为9999,是因为我又修改了nacos的配置,这样可以测试对bootstrap.properties的效果。
在这里插入图片描述
然后我们修改nacos的配置,看看动态修改的效果
在这里插入图片描述
这个时候,我们在控制台可以看到有刷新配置的日志
在这里插入图片描述
经过测试发现,在controller中的name属性的值已经修改。
但是,要注意了,端口号是没有修改的,说明boostrap.properties中的配置不支持动态修改。
在这里插入图片描述

源码地址:码云
下篇文章:Spring Cloud Alibaba实战(4) - 整合dubbo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值