弹簧启动中的混合配置

时间:2017-08-28 21:10:37

标签: spring-boot configuration-files

我有一个应用程序,其中有一些特定于配置文件的标头属性和一些常见的标头属性,这些属性在 application.yml 文件中维护。我想以某种方式使用这些,以便在指定任何类似ut / pd的弹簧配置文件时,它会从默认/公共部分获取配置文件特定的电子邮件但其他属性。我试图克服的问题是当它们已经存在于公共部分时重复这些属性。

logging:
  level:
    org.springframework: ERROR
    com.martin.client: DEBUG

spring:
  profiles:
    active: "default"
  main:
    banner-mode: "off"

header:
  header-key: SHA-256
  mac-algorith: HmacSHA256
  email: aaa@test.com
  secret-key: 692e9d385fbe74cf2a02049f4ee5e31df5296266
  mac: HmacSHA256
  secret: hmac-sha256
  gws-env: aaa

---

spring:
  profiles: ut

header:
  email: bbb@test.com
  gws-env: bbb

---

spring:
  profiles: pd

header:
  email: ccc@test.com
  gws-env: bbb 

1 个答案:

答案 0 :(得分:0)

您可以将application.properties中的所有常用属性和application-{profile}.properties中的所有配置文件特定属性放在一起。

<强> application.properties

my.default.prop=hello

<强> application-prod.properties

my.custom.prop=world

Spring Boot将查看这两个文件。您甚至可以覆盖特定于配置文件的属性文件中的默认属性。