提示信息:在高版本springboot中,不自動(dòng)讀取bootstrap.yml文件了,自己用時(shí)可引入spring-cloud-starter-bootstrap包。
Nacos服務(wù)注冊(cè)發(fā)現(xiàn)參考:http://www.itdecent.cn/p/ba298e0a2eab
spring-cloud-alibaba測(cè)試的版本是:2023.0.1.2
請(qǐng)看最新文檔,最新文檔,最新文檔:https://sca.aliyun.com/docs/2023/user-guide/nacos/quick-start/
1. 服務(wù)中引入Nacos配置包
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
2. nacos接入配置文件
- 微服務(wù)配置文件:
application.yml - 現(xiàn)在使用的nacos版本是2.3.2
- 直接在
application.yml中配置就可以 - 配置如下:
spring:
application:
name: oauth2-server
config:
import:
- nacos:${spring.application.name}.yaml?refreshEnabled=true
cloud:
nacos:
serverAddr: 10.10.1.6:8848
username: nacos
password: nacos
discovery:
register-enabled: true
# server-addr: 10.10.1.6:8848
ip: 10.10.1.2
3. 在nacos中添加配置

Nacos新增配置圖
-
-
Data ID命名規(guī)則:
${prefix}-${spring.profiles.active}.${file-extension}
-
prefix默認(rèn)為spring.application.name的值,也可以通過(guò)配置項(xiàng)spring.cloud.nacos.config.prefix來(lái)配置 -
spring.profiles.active即為當(dāng)前環(huán)境對(duì)應(yīng)的 profile,沒(méi)有就不用配置了,有不同環(huán)境也可以放不同命名空間。注意:當(dāng)spring.profiles.active為空時(shí),對(duì)應(yīng)的連接符-也將不存在,dataId 的拼接格式變成${prefix}.${file-extension}** -
file-exetension為配置內(nèi)容的數(shù)據(jù)格式,可以通過(guò)配置項(xiàng)spring.cloud.nacos.config.file-extension來(lái)配置。目前只支持properties和yaml類型
-
Data ID命名規(guī)則:
-
Group可以使用默認(rèn)的,也可以自定義,但是要和
application.yml中的group一致,(若有g(shù)ateway網(wǎng)關(guān)服務(wù),gateway服務(wù)必須要和其他微服務(wù)在同一組,才能找到路由地址)
-
Group可以使用默認(rèn)的,也可以自定義,但是要和
- 選好格式,記得
Data ID中要有這個(gè)格式后綴(yaml或properties)
- 選好格式,記得
- 填寫(xiě)配置信息
4. 配置自動(dòng)更新
使用Spring Cloud 原生注解 @RefreshScope,這樣通過(guò)@Value注解取到的值是更新過(guò)的(@ConfigProperties注解不是)
新版本在導(dǎo)入nacos配置的時(shí)候加了,這不加不知道可不可以。
@RestController
@RequestMapping("/config")
@RefreshScope
public class ConfigController {
@Value("${useLocalCache:false}")
private boolean useLocalCache;
@RequestMapping("/get")
public boolean get() {
return useLocalCache;
}
}