我对 Spring Boot 很陌生,我们正在开发 Spring Boot 应用程序(打包为 War 文件)。在 tomcat 服务器上的更高环境中部署此 war 文件时,1. 我们可以为 war 内部的 diff 环境配置 application.properties(无论是 dev、int、uat、prod)吗?或者 2. 配置 application.properties 后,我们可以将其放在 tomcat 的 conf 文件夹中,在 war 文件之外。(类似于将 context.xml 放在传统的 Web 应用程序中)并且应用程序仍然会选择它吗?
问问题
4668 次
2 回答
4
是的,您可以为不同的环境设置不同的配置文件。假设我们有dev
,qa
和prod
环境。您需要在同一位置创建三个文件,application.properties
其名称如下:
application-dev.properties
用于dev
环境application-qa.properties
用于qa
环境application-prod.properties
用于prod
环境
现在,您只需要设置spring.profiles.active=qa
. application.properties
目前,我们设置qa
个人资料。你可以设置你想要的。
注意您在新创建的配置文件中设置的属性仅适用于活动配置文件。例如,如果您在dev
文件中设置了一些属性,它将仅适用于dev
环境。但是设置的属性application.properties
将适用于所有环境。因此可以放置不依赖于环境的配置application.properties
于 2018-10-27T20:11:18.187 回答
1
您可以为您的环境配置不同的配置文件。对于您的开发环境,您可以添加一个 application-dev.properties(或 .yml)或对于 PROD 一个 application-prod.properties,然后只需使用该配置文件启动您的应用程序。
见https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-profiles.html
于 2018-10-27T19:28:48.700 回答