閱讀本文前,作者假設(shè)你已經(jīng)對Spring Cloud的基本配置有所了解。如果你需要了解這方面的資料,請參考http://cloud.spring.io/spring-cloud-static/spring-cloud-config/1.3.3.RELEASE/single/spring-cloud-config.html#_quick_start。本文只是學習的總結(jié)。
一、什么是Spring Cloud Config?
我想只要你能找到或者搜索到本篇文章,一定是了解Spring Cloud Config的,所以,我就簡單做一下介紹吧,Spring Cloud Config就是在一個集中的地方管理其他應(yīng)用配置的工具。那么具體到Spring Cloud這個上下文下,Spring Cloud Config包括Server端和Client端(也就是上文中提到的應(yīng)用),大部分情況下,他們都是Spring Boot應(yīng)用。
Spring Boot是Spring提供的一個快速的開發(fā)框架。更多Spring Boot的資料請參考Spring官方文檔。
二、Spring Cloud Config的客戶端應(yīng)用是怎么加載配置文件的?
Spring Cloud Config的客戶端在啟動的時候,會默認調(diào)用本地8080端口的/{application}/{profile}[/{label}]的API讀取所需配置文件,API?/{application}/{profile}[/{label}]會返回Config Server的配置文件目錄下的{application}.properties/yml, {application}-{profile}.properties/yml,并組裝成JSON數(shù)據(jù)并返回。
上文中有幾處配置:1)客戶端啟動時調(diào)用地址,在客戶端中配置,2)Config Server的配置搜索目錄,在服務(wù)端配置。
三、特殊的application.properties文件
如果你的Config Server的配置搜索目錄中存在application.properties文件,那么任何客戶端都可以加載該文件。
注:暫時不知這是有意為之,還是BUG。
四、加載其他純文本配置文件
如果你的應(yīng)用需要加載除properties和yml之外的其他的純文本配置文件,那么需要通過/{name}/{profile}/{label}/{path}來加載文件,其中path就是配置文件名,比如products.xml。對應(yīng)的部分URL為/{appname}/{profile}/{label}/{path}。