gpt4 book ai didi

java - 如何在一个简单的java程序中替换spring属性占位符

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:02:33 24 4
gpt4 key购买 nike

我正在使用 Java 和 spring boot 应用程序。我有一个属性文件,需要在运行时将其添加为 docker 镜像的环境变量。一些属性在通过占位符使用时会通过现有环境进行过滤,如下所示。

app.name=MyApp
app.description=${app.name} is a Spring Boot application

我正在编写一个示例 java 文件来读取此属性文件并创建一个具有一些过滤属性的 map 对象。在此过程中,如何用实际属性值替换占位符?

我已尝试使用 getProperty 方法寻找 key 并进行替换。但我想避免查找硬编码的属性键名称以避免维护困难。提前致谢。

最佳答案

用编号标记替换命名标记并使用 MessageFormat Java SE 类。它允许您完全按照您的要求去做。

假设 props 包含从您的文件加载的所有属性。

MessageFormat.format((String) props.get("app.description"),((String) props.get("app.name"));

在这里你的属性(property)应该是:

app.description={0} 是一个 Spring Boot 应用程序

否则你需要写一个自定义的

关于java - 如何在一个简单的java程序中替换spring属性占位符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47303358/

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