基于SpringBoot-Maven实现不同环境切换

配置文件的多环境切换

  • 1.在pom文件中定义profiles
    <profiles>
        <profile>
            <id>develop</id>
            <properties>
                <profiles.active>dev</profiles.active>
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
        <profile>
            <id>test</id>
            <properties>
                <profiles.active>test</profiles.active>
            </properties>
        </profile>
        <profile>
            <id>product</id>
            <properties>
                <profiles.active>product</profiles.active>
            </properties>
        </profile>
    </profiles>
  • 2.在resource下新建application-${profiles.active}.properties文件


    properties
    1. 在pom的build中指定resource
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <excludes>
                    <exclude>application-dev.properties</exclude>
                    <exclude>application-test.properties</exclude>
                    <exclude>application-product.properties</exclude>
                </excludes>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <includes>
                    <include>application-${profiles.active}.properties</include>
                    <include>application.properties</include>
                </includes>
            </resource>
        </resources>
    1. 在application.properties文件中添加配置spring.profiles.active=@profiles.active@

Bean的切换

  • 注解@Profile
 @Profile("dev")

代码业务的切换

    @Autowired
    private Environment environment;
String[] activeProfiles = environment.getActiveProfiles();

environment.getProperty("key");

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。