1.springboot项目
StartApp启动类
package com.aa.bb.cc;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.context.EnvironmentAware;
import org.springframework.context.annotation.ImportResource;
import org.springframework.core.env.Environment;
import org.springframework.transaction.annotation.EnableTransactionManagement;
@SpringBootApplication(exclude = DataSourceAutoConfiguration.class)
@EnableTransactionManagement
@ImportResource("classpath:/applicationContext.xml")
public class StartApp implements EnvironmentAware {
private static final Logger log = LoggerFactory.getLogger(StartApp.class);
public static void main(String[] args) {
SpringApplication.run(StartApp.class, args);
log.info("服务启动成功!");
}
@Override
public void setEnvironment(Environment environment) {
// String jdbcRef = environment.getProperty("zebra.jdbcRef");
String property = environment.getProperty("zebra.jdbcRef");
System.out.println(property);
}
}
2.applicationContext.xml
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
<import resource="thrift-beans.xml"/>
</beans>
3.application.xml
spring:
profiles:
active: '@active-profile@'
---
spring:
profiles: local
zebra:
jdbcRef: db_local
---
spring:
profiles: test
zebra:
jdbcRef: db_test
---
spring:
profiles: staging
zebra:
jdbcRef: db_product
---
spring:
profiles: prod
zebra:
jdbcRef: db_product
4.启动StartApp就可以看到输出了