如何以编程方式添加属性(就像在application.properties中添加键值一样)?

时间:2016-09-05 12:24:26

标签: spring-boot

我有一些每个项目应该设置的常见属性,例如

feign.hystrix.enabled=false
feign.httpclient.enabled=true

我不想在每个项目中重复添加这些道具,因此我将创建一个包含@Configruation类的额外jar文件。如何在@Configuration课程中添加属性?谢谢!

1 个答案:

答案 0 :(得分:2)

<强> PropertySources

您可以通过以下方式从另一个jar加载@PropertySources({ @PropertySource("classpath:common.properties") }) @Configuration public class SomeJavaConfig { }

spring-cloud-config-server

您可以在Spring's documentation中找到参考:

  

Spring Boot使用非常特殊的PropertySource顺序   旨在允许明智地覆盖价值观。属性是   按以下顺序考虑:

     

...

     
      
  1. @Configuration类上的@PropertySource注释。
  2.   

<强>弹簧云配置

我不会详细介绍所有细节,但另一个选择是使用spring-cloud-config在git中定义这些属性(使用spring-cloud-config-client)。然后,让你的spring-boot应用程序直接从git使用{{1}}加载application.properties。

检查一下: