当前位置: 首页 > 知识库问答 >
问题:

如何在Spring Boot应用程序中使用命令行参数读取自定义属性文件

晏富
2023-03-14

在启动我的spring boot应用程序时,我希望使用命令行参数设置自定义配置文件路径,例如:

java -jar some.jar -DConfigPath=conf/config.local(or conf/config.prod) 

那么如何读取这个文件来生成spring配置呢?我可以以某种“动态”方式使用注释@propertysource吗?

共有1个答案

汪典
2023-03-14

好的,我发现注释@PropertySource可以获得命令行参数注入的值

   @Configuration
   @ConfigurationProperties
   @PropertySource(value = "file:${ConfigPath}")
   public class MyConfig {
            @Getter
            @Value("${property_name}")
            private String myproperty;
    }
 类似资料:
  • 问题内容: 我可以创建自定义属性并将其应用到normal ,如下所示: 我的问题:是否可以在不创建扩展类的情况下读取这些自定义属性的值?我的意思是,我想从我的中读取自定义属性,但是到目前为止,我所看到的示例要求我从自定义视图的构造函数中读取值 问题答案: 我的问题:是否可以在不创建扩展EditText的类的情况下读取那些自定义属性的值? 是的,您无需扩展类即可获取这些属性。为此,你可以使用一个特殊

  • 我正在读取google appengine应用程序中文件夹(/war/config/client.properties)中的属性文件。它在我的本地服务器上运行良好,但在生产模式下不工作,并且抛出异常java。安全AccessControlException:拒绝访问(java.io.FilePermission)。 你能告诉我如何在生产模式下工作吗。

  • 在我的Java类中,我想读取一个变量,该变量将一次性为我提供一个令牌列表,我的令牌是一个对象,字段为name、value和enabled。 如何在我的应用程序中定义这一点。属性文件,以便我可以一次读取所有标记。例如,我有如下标记: 我尝试了其他链接,但找不到一种方法可以一次全部阅读。 想要创建这样的bean

  • 我的应用程序有存储在applicaion.yml文件中的嵌套属性。 我希望在应用程序启动时将这些属性映射到POJO。 application.yml: 为了实现这一点,我使用了以下注释: @configuration @enableConfigurationProperties @configurationProperties(“demo”) 类演示: 主类 但是我在O/P下面: 步骤1 名称:D

  • 我在src/main/resources下创建了2个文件: 应用程序。属性 第一个具有从env变量中获取值的属性,而后者具有固定值。 根据这里的具体情况,我以这样的方式推出了Spring靴: 然而,不会产生任何影响,并且应用程序是局部的。属性似乎被忽略。 有什么提示吗?