Spring Boot中Profile配置的简介及示例说明
下文笔者讲述Profile配置的简介及示例说明,如下所示
main方法启动时--指定profile
Profile简介
Profile是
Spring Boot对不同环境或指令来读取不同的配置文件
Profile使用场景
如:
有开发、测试、生产三个不同的环境
需定义三个不同环境下的配置
基于properties文件类型
可建立3个环境下的配置文件
applcation.properties\
application-dev.properties\
application-test.properties\
application-prod.properties
当在applcation.properties文件中指定当前环境信息
spring.profiles.active=test\
此时会读取application-test.properties文件
另使用yml文件类型配置application
spring:
profiles:
active: prod
---
spring:
profiles: dev
server:
port: 8080
---
spring:
profiles: test
server:
port: 8081
---
spring.profiles: prod
spring.profiles.include:
- proddb
- prodmq
server:
port: 8082
---
spring:
profiles: proddb
db:
name: mysql
---
spring:
profiles: prodmq
mq:
address: localhost
此时读取的就是prod的配置
prod包含proddb,prodmq
此时可以读取proddb,prodmq下的配置。
例2:
同时激活三个配置 spring.profiles.active: prod,proddb,prodmq使用Java代码加载不同的Profile
//指定读取prod下的内容
@Configuration
@Profile("prod")
public class ProductionConfiguration {
// ...
}
main方法启动时--指定profile
// 在Eclipse Arguments里面添加
--spring.profiles.active=prod
插件启动方式:
spring-boot:run -Drun.profiles=prod
jar运行方式:
java -jar xx.jar --spring.profiles.active=prod
另在启动类中使用SpringApplication.setAdditionalProfiles方法。
SpringApplication.class
public void setAdditionalProfiles(String... profiles) {
this.additionalProfiles = new LinkedHashSet<String>(Arrays.aslist(profiles));
}
// 在Eclipse Arguments里面添加
--spring.profiles.active=prod
插件启动方式:
spring-boot:run -Drun.profiles=prod
jar运行方式:
java -jar xx.jar --spring.profiles.active=prod
另在启动类中使用SpringApplication.setAdditionalProfiles方法。
SpringApplication.class
public void setAdditionalProfiles(String... profiles) {
this.additionalProfiles = new LinkedHashSet<String>(Arrays.aslist(profiles));
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


