2

我对 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 应用程序中)并且应用程序仍然会选择它吗?

4

2 回答 2

4

是的,您可以为不同的环境设置不同的配置文件。假设我们有dev,qaprod环境。您需要在同一位置创建三个文件,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 回答