Наследование свойств профиля Spring с помощью одного файла свойств - PullRequest
0 голосов
/ 17 апреля 2019

У меня есть один application.yml файл, содержащий несколько пружинных профилей. Я хочу наследовать свойства от одного профиля к другому.

В этом примере я хочу наследовать свойства профиля prod в prod1 без повторной записи общих свойств в профиле prod1.

  server:
    port: 8080

  spring:
    datasource:
      driver-class-name: com.mysql.cj.jdbc.Driver
    application:
      name: TestApp

    URL: "https://localhost:8181/Services/IDEA-Client-Partners"
  ---
  spring:
    profiles: dev
  ---
  spring:
    profiles: prod

  URL: https://www.ideaedu.org/Services/IDEA-Client-Partners

  ---
  spring:
    profiles: prod1

1 Ответ

1 голос
/ 17 апреля 2019

свойства уже наследуются, если активировано несколько профилей.Например, если вы активируете prod и prod1 все свойства по умолчанию

Учитывая ваш пример,

 server:
    port: 8080

  spring:
    datasource:
      driver-class-name: com.mysql.cj.jdbc.Driver
    application:
      name: TestApp

    URL: "https://localhost:8181/Services/IDEA-Client-Partners"
  ---
  spring:
    profiles: dev
  ---
  spring:
    profiles: prod

  URL: https://www.ideaedu.org/Services/IDEA-Client-Partners
  prodProperty: test
  ---
  spring:
    profiles: prod1

  URL: https://localhost/

И, активируя все профили, -Dspring.profiles.active=prod,prod1

будут установлены следующие свойства,

  • port = 8080
  • diver-имя-класса = com.mysql.cj.jdbc.Driver
  • name = TestApp
  • prodProperty = test
  • URL = https://localhost/

В случае противоречивых свойств, например, URL в этом примере, последнее прочитанное свойство выигрывает, т.е. когда активны prod и prod1, последнее прочитанное свойство будет в определении prod1 в этом случае.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...