gpt4 book ai didi

spring-boot - 如何通过例如配置默认的 application.properties定制启动器?

转载 作者:行者123 更新时间:2023-12-02 03:33:10 25 4
gpt4 key购买 nike

为了简化内部开发,我正在考虑为 Spring Boot 开发一个薄层/客户启动器。这个自定义启动程序仅依赖于一些启动启动程序和我们需要的其他一些依赖项(外部和内部)。

无论如何,下一步我想做的是这个自定义启动器包含一个 application.properties 配置,其中包含我们想要在项目中应用的默认设置。我希望自动获取此配置文件,而无需明确引用它。当然,应该可以覆盖实际项目中的属性。

Boot 是否已经提供了一些可以轻松实现的功能?

注意:我已经有了扩展 Boot 的 SpringApplication 的“自定义”应用程序;所以如果我能这样配置就没有问题了。

最佳答案

Spring Boot 使用 specific order 查找属性:

  1. 命令行参数
  2. Java 系统属性 (System.getProperties())
  3. 操作系统环境变量
  4. 来自 java:comp/env 的 JNDI 属性
  5. 一个 RandomValuePropertySource,仅具有 random.* 中的属性
  6. 打包 jar 之外的应用程序属性(application.properties 包括 YAML 和配置文件变体)
  7. 打包在 jar 内的应用程序属性(application.properties 包括 YAML 和配置文件变体)
  8. @Configuration 类上的@PropertySource 注释
  9. 默认属性(使用 SpringApplication.setDefaultProperties 指定)

为了让使用自定义启动器的项目在覆盖默认值方面具有最大的灵 active ,您应该使用尽可能接近上述列表末尾的机制。鉴于您已经拥有自己的 SpringApplication 子类,我将使用 SpringApplication.setDefaultProperties(Properties)来自该子类。

关于spring-boot - 如何通过例如配置默认的 application.properties定制启动器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56874509/

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