在bootstrap文件中配置如下內容(yml請注意遵循yml格式,縮進,空格),其中#號表示注釋
spring:application:name: 當前服務名字假設叫abccloud:config:#config服務的地址uri: http://xxx.xx.xx #當然也可直接寫abcname: ${spring.application.name} label: git上的分支名假設叫aaa
當在bootstrap.yml或者bootstrap.properties文件中配置完上述內容之后,當項目啟動時候,項目就會去git上的aaa分支拉去aaa.yml或者aaa.properties文件,若這兩個文件都沒找到,則尋找過程中依然不會報錯,等項目需要這些配置屬性的時候,才會報錯,但不會提示文件不存在,所以此處需要注意:
git上的文件必須帶后綴名,且后綴名必須是.yml或者properties,否則config組件將獲取不到該配置文件
上述內容是項目獲取git上的文件內容,那么我只是想通過config組件獲取git上的文件,應該怎么辦呢?有很多種寫法,不過最后我自己還是喜歡下面這種
示例1:文件名:aa.properties,在pp環境上,在a1分支上,則按照如下地址訪問
localhost:xxxx/aa/pp/a1
示例2:文件名:bb.properties,無environment,在a2分支上,則按如下地址訪問
localhost:xxxx/aa/suibian/a2
需要注意的是因為沒有environment,但是那個地方還必須有個路徑存在,所以在哪里隨便寫什么都可以,各種字母各種字符都可以,像下面這種都是可以的
比如localhost:xxxx/aa/abc/a2
比如localhost:xxxx/aa/pentakill/a2
比如localhost:xxxx/aa/tatu/a2
都可以獲取無env情況的配置文件
具體源代碼在
org.springframework.cloud.config.server.environment.EnvironmentController中,我上述兩個示例中使用的是labelled方法
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态