SpringCloud分散式微服務b2b2c電子商務-Spring Cloud自定義引導屬性源

gung123發表於2020-01-03

引導過程新增的外部配置的預設屬性源是Config Server,但您可以透過將PropertySourceLocator型別的bean新增到引導

上下文(透過spring.factories)新增其他源。您可以使用此方法從其他伺服器或資料庫中插入其他屬性。


作為一個例子,請考慮以下微不足道的自定義定位器:

@Configuration
public class CustomPropertySourceLocator implements PropertySourceLocator {
 
    @Override
    public PropertySource<?> locate(Environment environment) {
        return new MapPropertySource("customProperty",
                Collections.<String, Object>singletonMap("property.from.sample.custom.source", "worked as intended"));
    }
 
}

傳入的Environment是要建立的ApplicationContext的Environment,即為我們提供額外的屬性來源的。它將已經具有正常

的Spring Boot提供的資源來源,瞭解springcloud架構可以加求求:三五三六二四七二五九,因此您可以使用它們來定位特

定於此Environment的屬性源(例如透過將其繫結在spring.application.name上,如在預設情況下所做的那樣Config Server屬性源定位器)。


如果你在這個類中建立一個jar,然後新增一個META-INF/spring.factories包含:

org.springframework.cloud.bootstrap.BootstrapConfiguration=sample.custom.CustomPropertySourceLocator

那麼“customProperty”PropertySource將顯示在其類路徑中包含該jar的任何應用程式中。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952307/viewspace-2671847/,如需轉載,請註明出處,否則將追究法律責任。

相關文章