Spring Boot 在vert.x和EKS中外部化配置文件中的值

3phpmpom  于 2023-02-04  发布在  Spring
关注(0)|答案(1)|浏览(120)

我习惯于在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。
感谢提供的帮助。

vawmfj5a

vawmfj5a1#

Vert.x Core不提供这样的解决方案。
您需要添加Vert.x Config模块,它能够合并来自不同来源的值(系统属性、环境变量、配置文件...等等)

相关问题