【发布时间】:2021-10-13 01:02:13
【问题描述】:
我有一个运行功能的 Spring Boot 应用程序。我想在运行时切换该功能(开/关)而不重新部署或重新启动应用程序。问题是我无法部署任何休息端点,因为服务器由于安全原因只暴露了一些特定的端口。
我想远程控制切换开关,以便我可以打开和关闭该功能。我尝试使用以下方法读取本地机器上的环境变量:
System.getEnv("envVariable")
但即使在使用 export envVariable=true 更新它之后,它也没有反映代码中的更新值。
有人可以建议任何方法来实现这一点吗?
谢谢,
【问题讨论】:
-
请提供读取此环境变量的代码。如果这是在 bean 级别,并且 bean 是单例的,那么您必须重新启动应用程序以重新初始化 bean 以读取更新的值。要每次获取更新的值,您需要在方法级别读取此值。
标签: java spring-boot jar runtime