【问题标题】:Is it possible to change at runtime a specific value inside a property.file in spring boot?是否可以在运行时更改 Spring Boot 中 property.file 中的特定值?
【发布时间】:2019-05-30 17:21:25
【问题描述】:

我正在开发一个将连接多个端点的 API。每个端点的 uri 是这样的:

rest/services/General/directory1/MapServer/export
rest/services/General/directory2/MapServer/export
rest/services/General/directory3/MapServer/export
rest/services/General/directory4/MapServer/export

等等……

我不知道这是否可能,但希望有这样的东西:

rest/services/General/${value}/MapServer/export

然后在我的代码上调用上面的端点,在 ${value}

上注入我想要的特定目录

有可能吗?不知道我在谷歌搜索时遗漏了什么,但找不到任何相关内容。

干杯

【问题讨论】:

标签: java spring file spring-boot properties


【解决方案1】:

我使用最简单的方法解决问题。在我的代码中,我使用了 string.replace() 方法。正在寻找更强大的东西,但由于需要花费大量时间来解决如何做,我决定使用 string.replace 方法。

【讨论】:

    【解决方案2】:

    您可以通过 Spring Cloud Config 来实现。

    Spring Cloud Config 提供服务器和客户端支持 分布式系统中的外部化配置。使用配置 服务器,您有一个中心位置来管理其外部属性 跨所有环境的应用程序。客户和客户的概念 服务器映射与 Spring Environment 和 PropertySource 相同 抽象,因此它们非常适合 Spring 应用程序,但可以 可用于以任何语言运行的任何应用程序。作为一个 应用程序通过部署管道从开发移动到测试和 投入生产,您可以管理它们之间的配置 环境,并确保应用程序拥有它们所需要的一切 迁移时需要运行。的默认实现 服务器存储后端使用 git,因此它很容易支持标记 配置环境的版本,以及可访问 用于管理内容的各种工具。很容易添加 替代实现并使用 Spring 将它们插入 配置。

    更多详情,请浏览spring文档here

    【讨论】:

    • 为回复欢呼。现在看看,但如果可能的话,我想只使用spring boot,因为我正在为客户工作并且项目由他们处理给我,并且项目的所有依赖项都由他们存储,这意味着我不不能直接访问它们。他们想要那样,所以如果可能的话,我只是在寻找弹簧靴,但会看看我是否能做到。为花时间提供帮助干杯:)
    • 也许这篇文章就是你要找的stackoverflow.com/questions/40287771/…
    • 感谢伙伴的帮助,但我决定使用最简单的方法:string.replace()。只是认为使用 Spring Cloud 实现这一点会很麻烦。
    • 对于你面前的情况,你说的似乎很相关。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-02
    • 2016-12-25
    • 2014-07-14
    • 1970-01-01
    • 1970-01-01
    • 2021-06-09
    相关资源
    最近更新 更多