具有外部属性的Spring Boot配置文件

格尔吉·佩德尔(Gergely Peidl)

我想在春季启动时设置3个配置文件:使用外部配置文件进行生产,开发,测试。

应用类别:

@SpringBootApplication
public class Application {

    public static void main(String[] args){
        SpringApplication.run( Application.class, args );
    }
}

AppConfig类:

@Configuration
@PropertySources({
        @PropertySource("config/application.yml"),
        @PropertySource(value = "file:${external.config}")
})

@ConfigurationProperties
public class AppConfig {

}

config / application.yml:

---
spring.profiles: production
endpoints.enabled: false
---
spring.profiles: development,test
endpoints.enabled: true
info.version: @project.version@
info.test: Test dev or test
info.profile: ${spring.profiles.active}
---

external.config: ${user.home}/.myapp/application.properties

.myapp / application.properties:

spring.profiles.active=production
info.version=5

spring-boot-actuator / info的输出

{
  version: "5",
  test: "Test dev or test",
  profile: "production"
}

预期产量:

404 because of the endpoints.enabled: false

弹簧启动执行器/ env

spring.profiles.active: "production"
lee

您可能应该在application.yml文件前添加前缀 classpath:

无论如何,为什么不只使用spring配置文件直接在Java配置中驱动配置?海事组织,这将更清洁,并使您的财产更加类型安全且易于重构,并且不易出现拼写错误。

更新:

根据文档,您无法加载带有@PropertySource注释的yml文件

http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html#boot-features-external-config-yaml-shortcomings

因此,如果您需要使用文件,则需要使用普通属性文件。您可以使用此处显示的特定于属性的应用程序属性文件

除了application.properties文件之外,还可以使用命名约定application- {profile} .properties来定义特定于配置文件的属性。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Spring Boot外部属性文件更新

来自分类Dev

Spring Boot配置文件。怎么测试?

来自分类Dev

从Spring加载多个外部属性文件

来自分类Dev

在外部 tomcat 上使用 Spring Boot 配置文件

来自分类Dev

在spring boot @activeprofile注释中配置Maven配置文件

来自分类Dev

Spring Boot-添加外部属性文件

来自分类Dev

在 Spring Boot 中具有 jar 文件之外的配置文件

来自分类Dev

在Spring-boot中设置默认的活动配置文件

来自分类Dev

New Relic 未加载配置文件 Spring Boot App

来自分类Dev

Spring boot - h2 和 mysql 的配置文件

来自分类Dev

Spring Boot + Spring Cloud Config-如何从Git外部配置添加更多配置文件

来自分类Dev

如果使用Spring,则从外部属性文件覆盖属性

来自分类Dev

Spring Boot应用程序特定的外部属性

来自分类Dev

Spring PropertyPlaceHolder Java Config外部属性文件

来自分类Dev

从 Spring 中的外部属性文件读取 JNDI 名称

来自分类Dev

具有不同配置文件的Maven配置文件

来自分类Dev

Spring Boot 找不到特定于配置文件的属性文件

来自分类Dev

如何通过Spring Boot使用外部log4j.xml配置文件?

来自分类Dev

读取外部属性文件

来自分类Dev

在Spring配置文件中定义变量以访问具有图像的外部文件夹

来自分类Dev

使用配置文件配置spring-boot-starter-remote-shell

来自分类Dev

我可以在Spring Boot配置文件中定义系统属性吗?

来自分类Dev

在Spring Boot中如何同时使用来自不同配置文件的属性?

来自分类Dev

读取外部配置文件

来自分类Dev

Gradle构建Spring Boot应用程序与有效配置文件进行战争

来自分类Dev

带有application.properties的spring-boot数据源配置文件

来自分类Dev

带有Spring Boot错误的AWS S3“配置文件不能为空”

来自分类Dev

OSGi配置文件(例如Spring配置文件)

来自分类Dev

具有属性变量的Maven配置文件

Related 相关文章

  1. 1

    Spring Boot外部属性文件更新

  2. 2

    Spring Boot配置文件。怎么测试?

  3. 3

    从Spring加载多个外部属性文件

  4. 4

    在外部 tomcat 上使用 Spring Boot 配置文件

  5. 5

    在spring boot @activeprofile注释中配置Maven配置文件

  6. 6

    Spring Boot-添加外部属性文件

  7. 7

    在 Spring Boot 中具有 jar 文件之外的配置文件

  8. 8

    在Spring-boot中设置默认的活动配置文件

  9. 9

    New Relic 未加载配置文件 Spring Boot App

  10. 10

    Spring boot - h2 和 mysql 的配置文件

  11. 11

    Spring Boot + Spring Cloud Config-如何从Git外部配置添加更多配置文件

  12. 12

    如果使用Spring,则从外部属性文件覆盖属性

  13. 13

    Spring Boot应用程序特定的外部属性

  14. 14

    Spring PropertyPlaceHolder Java Config外部属性文件

  15. 15

    从 Spring 中的外部属性文件读取 JNDI 名称

  16. 16

    具有不同配置文件的Maven配置文件

  17. 17

    Spring Boot 找不到特定于配置文件的属性文件

  18. 18

    如何通过Spring Boot使用外部log4j.xml配置文件?

  19. 19

    读取外部属性文件

  20. 20

    在Spring配置文件中定义变量以访问具有图像的外部文件夹

  21. 21

    使用配置文件配置spring-boot-starter-remote-shell

  22. 22

    我可以在Spring Boot配置文件中定义系统属性吗?

  23. 23

    在Spring Boot中如何同时使用来自不同配置文件的属性?

  24. 24

    读取外部配置文件

  25. 25

    Gradle构建Spring Boot应用程序与有效配置文件进行战争

  26. 26

    带有application.properties的spring-boot数据源配置文件

  27. 27

    带有Spring Boot错误的AWS S3“配置文件不能为空”

  28. 28

    OSGi配置文件(例如Spring配置文件)

  29. 29

    具有属性变量的Maven配置文件

热门标签

归档