2014-09-30 46 views
1

为了简化内部开发,我正在考虑为Spring Boot开发一个薄层/客户启动器。 这个自定义启动器只取决于一些启动启动器和我们需要的其他一些依赖项(包括外部和内部)。如何通过例如配置默认application.properties自定义启动器?

无论如何,我想要做的下一步就是这个自定义启动器包含一个application.properties配置,并在我们的项目中应用默认设置。 我想这个配置文件被自动拾取而没有明确提及它。当然,应该可以重写实际项目中的属性。

Does Boot已经提供了这个容易吗?

注:我已经有'Custom'Application扩展Boot的SpringApplication;所以如果我可以用这种方式进行配置就没有问题了。

+0

只要位于默认位置,应该可以添加多个'application.properties'。否则,您可以提供默认值,并使用外部'application.properties'文件来覆盖这些属性。 – 2014-10-01 06:38:22

回答

1

春季启动查找使用性能specific order

  1. 的命令行参数
  2. Java系统属性(System.getProperties()
  3. OS环境变量
  4. JNDI从java:comp/env
  5. 一个RandomValuePropertySource属性是只有物业random.*
  6. 打包的罐子外
  7. 应用程序属性(application.properties包括YAML和轮廓变型)包装的罐子里
  8. 应用程序属性(application.properties包括YAML和轮廓变型)
  9. @PropertySource注释您@Configuration
  10. 默认属性(指定使用SpringApplication.setDefaultProperties

要让项目使用自定义启动器在如何覆盖默认值方面具有最大的灵活性,您应该使用机制sm尽可能接近上述列表的末尾。 考虑到你已经有了自己的子类SpringApplication,我会在该子类中使用SpringApplication.setDefaultProperties(Properties)

+0

谢谢安迪,我应该更好地检查文档:-(。8或9确实是我所需要的。 – 2014-10-01 12:57:29

相关问题