In Projekten werden häufig einige Konfigurationsinformationen benötigt. Diese Informationen können in der Testumgebung und in der Produktionsumgebung unterschiedliche Konfigurationen haben und müssen möglicherweise später basierend auf den tatsächlichen Geschäftsbedingungen geändert werden. Wir können diese Konfigurationen nicht fest im Code codieren. Am besten schreiben Sie sie in die Konfigurationsdatei. Sie können diese Informationen beispielsweise in die Datei application.yml
schreiben. application.yml
文件中。
那么,怎么在代码里获取或者使用这个地址呢?有2个方法。
我们可以通过@Value 注解的 ${key} 即可获取配置文件(application.yml)中和 key 对应的 value 值,这个方法适用于微服务比较少的情形
在实际项目中,遇到业务繁琐,逻辑复杂的情况,需要考虑封装一个或多个配置类。比如,如果一个业务需要同时使用微服务1、微服务2和微服务3,那么这些微服务将被调用。
如果这样一个个去使用 @Value 注解引入相应的微服务地址的话,太过于繁琐。
也许实际业务中,远远不止这三个微服务,甚至十几个都有可能。对于这种情况,我们可以先定义一个 MicroServiceUrl
Also, wie bekomme ich diese Adresse oder verwende ich sie im Code? Es gibt 2 Methoden.
MicroServiceUrl
-Klasse definieren, um speziell die URL des Microservices zu speichern. import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; @Component @ConfigurationProperties(prefix = "url") public class MicroServiceUrl { private String orderUrl; private String userUrl; private String shoppingUrl; public String getOrderUrl() { return orderUrl; } public void setOrderUrl(String orderUrl) { this.orderUrl = orderUrl; } public String getUserUrl() { return userUrl; } public void setUserUrl(String userUrl) { this.userUrl = userUrl; } public String getShoppingUrl() { return shoppingUrl; } public void setShoppingUrl(String shoppingUrl) { this.shoppingUrl = shoppingUrl; } }#🎜🎜#Die Konfiguration ist jetzt geschrieben. Es ist nicht erforderlich, die URLs dieser Mikrodienste einzeln in den Code einzuführen. Sie können die neu geschriebene Konfigurationsklasse direkt über die Annotation @Resource einfügen . Das Folgende ist der Test-Controller: #🎜🎜##🎜🎜##🎜🎜##🎜🎜#
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional> </dependency>
Das obige ist der detaillierte Inhalt vonSo erhalten Sie den Wert in application.yml in Springboot. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!