我习惯于在Spring Boot 时工作,当我需要外部化配置值时,我通常会创建一个应用程序。
SUD:
BASEPATH: ${SUD_SERVICE_BASE_PATH:https://origin-sud.com}
MCS_BASEPATH: ${SUD_SERVICE_MCS_BASE_PATH:https://sud.com/}
MCS_TOKEN: ${SUD_SERVICE_MCS_TOKEN:a2341b8b-4ca5-4513-8c52-gf267bihbh}
MCS_SUBSCRIPTION_ENDPOINT: ${SUD_SERVICE_MCS_SUBSCRIPTION_ENDPOINT:/v1/manag}
HOST: ${SUD_SERVICE_HOST:sud.com}
现在的值为
SUD_SERVICE_BASE_PATH
SUD_SERVICE_MCS_BASE_PATH
SUD_SERVICE_MCS_TOKEN
SUD_SERVICE_MCS_SUBSCRIPTION_ENDPOINT
SUD_SERVICE_HOST
正在从EKS配置Map中获取数据。如果这些值不存在,我们将使用默认值。
https://origin-sud.com
https://sud.com
要在 Spring Boot 代码中访问它。我们执行以下操作。它从EKS配置中获取数据(如果存在或默认为默认值)。@GetMapping(“${SUD.MCS_SUBSCRIPTION_ENDPOINT}”)
现在我想在vert. x中做同样的事情。我读过vert.c的博客,但我找不到这样做的方法。
我找到它的唯一方法就是得到
String host = System.getenv.getOrDefault("SUD_SERVICE_BASE_PATH", https://origin-sud.com);
String port = System.getenv.getOrDefault("SUD_SERVICE_MCS_BASE_PATH", https://sud.com/);
我想做一些类似于spring Boot 的操作,而不是调用System. getenv. getOrDefault。
感谢提供的帮助。
1条答案
按热度按时间vawmfj5a1#
Vert.x Core不提供这样的解决方案。
您需要添加Vert.x Config模块,它能够合并来自不同来源的值(系统属性、环境变量、配置文件...等等)