inicialização Primavera questão de configuração do aplicativo

user3833308:

Tenho seguinte estrutura de minha aplicação

----
   | 
   |____SpringBootApplicationA
        |
        |
        |___module-1
        |___module-2

Cada módulo tem a sua própria configuração, por exemplo, o módulo-1 é uma biblioteca que fala com mysql, tem a sua configuração (string de conexão, nome de usuário, senha, etc ...)

Agora eu quero representar esta configuração na forma de Java POJO no módulo-1. application.ymle um bean que ler a configuração e define os valores.

Por exemplo

class Module1Config {

  private String key1;
  private String key2;

  // getters & setters
}

application.yml em módulo-1

key1: val1
key2: val2

agora como um consumidor de módulo-1, SpringBootApplicationAreceberá configuração do módulo-1 que é o que definir como padrão pelo módulo-1.

Do lado do consumidor terá de configuração do aplicativo como este

someKey1: someVal1
someKey2: someVal2
module-1:
  key1: overrideVal1

e quando a inicialização acontece de feijão módulo-1, eu quero que os valores a serem vistos como

key1: overrideVal1
key2: val2

Como inicialização primavera configure a respeitar os valores padrão e substituí-los?


Editar

class AppConfig {

  private String key1;
  private int key2;

  private Module1Config conf;

  // getters + setters

}

Esta é a minha configuração exemplo de aplicação, como você pode ver que tem algum específico para configuração de aplicativos e outras configurações que está aproveitando de outros módulos.

Quero confobjeto para obter atribuído conjunto padrão de valor a partir module1 e, em seguida, qualquer aplicação que tenha especificado como uma substituição

Mykhailo Moscou:

inicialização Primavera por cargas padrão application.yml arquivo de src / main / recursos Você pode declarar outro arquivo application.yml na pasta config do caminho e configuração de raiz da pasta de configuração irá substituir a configuração de src / main / recursos

locais de configuração são pesquisados ​​na ordem inversa. Por padrão, os locais configurados são classpath: /, classpath: / config /, file: ./, file: ./ config /. A ordem de pesquisa resultante é o seguinte:

file: ./ config / file: classpath ./: / config / classpath: /

Aqui é link de documentação oficial:

https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html

Eu acho que é útil

Acho que você gosta

Origin http://43.154.161.224:23101/article/api/json?id=201264&siteId=1
Recomendado
Clasificación