Spring Cloud Alibaba nacos作为配置中心踩坑记录

一、初步使用

1、pom文件引入alibaba-nacos-config

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

2、bootstrap.yml配置

3、Controller使用

4、Nacos界面配置

5、Controller加上@RefreshScope,修改配置后会自动更新。

注意两点(一不注意就翻车):

1、第2步中的file-extension和界面上面配置的Data ID的文件后缀,必须一致。初次使用file-extension写成yml,Data ID写成stock-service-dev.yaml会导致取不到。假设Controller里面不是取user.name(这里凑巧,即便配得不一致,user.name会取系统名),就会报错(假设改成test.name)。Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder test.name in value "${test.name}"

2、配置内容这里(第4步的箭头指向),name:后面必须有空格。

二、nacos外部数据库支持

第一步:执行nacos-mysql.sql,创建Nacos需要的数据库表等;

第二步:nacos使用该数据库,放开application.properties中该段注释并改成正确的信息,然后重启

经验分享 程序员 微信小程序 职场和发展