SpringBoot--Profile

BtWangZhi發表於2017-11-20

1 針對不同的環境,SpringBoot提供了全域性Profile配置,在application.properties中指定當前使用的配置檔案。如下例子:
這裡寫圖片描述
開發環境:
application-dev.properties:

server.port=8080

線上環境:

server.port=80

第一次在application.properties中指定開發環境:

spring.profiles.active=dev

執行結果:
這裡寫圖片描述
第二次配置生成環境,在application.properties中指定開發環境:

spring.profiles.active=prod

這裡寫圖片描述
結論:在application.properties中指定當前配置檔案,系統會去尋找指定的配置檔案:application-dev.properties和application-prod.properties

2 官方檔案中提到在配置類的上面新增@Profile註解來指定在application.properties中配置spring.profiles.active的值,
如:
配置類

@Configuration
@Profile("production")
public class ProductionConfiguration {
// ...
}

application.properties:

spring.profiles.active=production