gpt4 book ai didi

spring - 在 Spring Cloud Config 中使用@PropertySource - Git

转载 作者:行者123 更新时间:2023-12-04 15:45:03 24 4
gpt4 key购买 nike

我正在使用@PropertySource 来配置配置类:

@Configuration
@PropertySource("classpath:/mongo-${env}.properties")
public class MongoConfiguration {

mongo-${env}.properties 文件位于类路径中。这很好用。

我现在使用 Spring Cloud Config 将配置外部化到 Git:所有 application.yml 文件都已迁移。但是我不知道是否有可能以及如何外部化属性文件,例如在@PropertySource 中声明的属性文件。

我做了什么:我试图在 Git 中将 mongo-prod.properties 重命名为 application-prod.properties。然后我将@PropertySource 更改为:

@PropertySource("file:///C://.../config-repo/application-prod.properties")

这是存储库的本地副本。这可行,但这只是一个硬编码解决方案。

是否有更清洁的解决方案?

最佳答案

您可以使用 @ConfigurationProperties 注释加载属性假设您已经正确设置了配置服务器。

例子假设您的服务名称是 customer-service 并且想从配置服务器获取属性文件。

第 1 步在您的 git 存储库中添加客户属性。您还可以添加特定于环境的属性,例如

customer-qa.properties ,customer-dev.properties

现在加载这些属性

@Component
@ConfigurationProperties("customer-service")
@Data
public class CustomerServiceConfigurations {

private String somePropertyname;

}

有关更多详细信息,请查看以下示例 Config Server

关于spring - 在 Spring Cloud Config 中使用@PropertySource - Git,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56238158/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com