nacos配置在代碼中引用的方法講解
1、在代碼的模塊服務(wù)中安裝nacos 配置依賴
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>2、在nacos配置中心中進(jìn)行服務(wù)配置 注意不是模塊名,是服務(wù)名稱,即在bootstrap.yaml中配置的服務(wù)名稱

3、在模塊的bootstrap.yml文件中添加配置信息
# 注意前邊是 spring cloud nacos config: server-addr: 127.0.0.1:8848 # 即服務(wù)發(fā)現(xiàn)的地址 # 如果不是public則需要再加一行指定具體的命名空間。
4、使用@Value(${})使用配置
@Value("${common.name}")
private String common_name;
@GetMapping(value = "/configs")
public String getValue(){
return common_name;
}獲取動(dòng)態(tài)的配置信息
代碼如下:
@Value("${common.name}") // 這種方法不能獲取動(dòng)態(tài)的配置信息
private String common_name;
@Autowired
private ConfigurableApplicationContext applicationContext; // 這種方式可以獲取動(dòng)態(tài)的配置信息
@GetMapping(value = "/configs")
public String getValue(){
// return common_name;
return applicationContext.getEnvironment().getProperty("common.name");
}擴(kuò)展配置
1、首先在nacos中配置兩個(gè)拓展的配置文件 配置文件1

配置文件2

注意這兩個(gè)文件的配置內(nèi)容的變化 2、在bootstrap.yaml文件中添加如下配置
config:
server-addr: 127.0.0.1:8848
file-extension: yaml # 原配置 或者說是主配置
group: DEFAULT_GROUP
ext-config[0]: # 拓展配置1
data-id: ext-config-common01.yaml
group: COMMON_GROUP
refresh: true # 動(dòng)態(tài)刷新
ext-config[1]: # 拓展配置2
data-id: ext-config-common02.yaml
group: COMMON_GROUP
refresh: true3、代碼引用:
@Autowired
private ConfigurableApplicationContext applicationContext;
@GetMapping(value = "/config")
public String getValue(){
String name = applicationContext.getEnvironment().getProperty("common.name");
String addr = applicationContext.getEnvironment().getProperty("common.addr");
return name+addr;
}4、最終的輸出結(jié)果:

5、對(duì)結(jié)果的總結(jié):
5.1、如果主配置中配置的內(nèi)容和拓展配置的內(nèi)容重復(fù)則按主配置的配置
5.2、如果拓展配置中的內(nèi)容和另一個(gè)拓展配置中的內(nèi)容重復(fù),則按下標(biāo)大的配置作為最終的配置
到此這篇關(guān)于nacos配置在代碼中如何引用的文章就介紹到這了,更多相關(guān)nacos配置代碼引用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決idea配置Tomcat Deployment沒有artifact選項(xiàng)的問題
Java中EnumMap和EnumSet枚舉操作類的簡(jiǎn)單使用詳解
Java使用JDBC驅(qū)動(dòng)連接MySQL數(shù)據(jù)庫

