web项目开发一般分为开发>测试>生产 三个环境,环境不同对应的数据库等信息也不相同,可以通过配置实现自动切换,配置步骤如下:
一、 在src/main/resources目录下创建相关文件
二、pom.xml 文件核心配置
<profiles>
<profile>
<id>dev</id>
<properties>
<profileActive>dev</profileActive>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>pro</id>
<properties>
<profileActive>pro</profileActive>
</properties>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
</profile>
</profiles>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>application.yml</exclude>
<exclude>application-dev.yml</exclude>
<exclude>application-pro.yml</exclude>
</excludes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>application-${profileActive}.yml</include>
<include>application.yml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<delimiters>@</delimiters>
<encoding>utf-8</encoding>
<useDefaultDelimiters>false</useDefaultDelimiters>
</configuration>
</plugin>
</plugins>
</build>
通过标签<profiles>配置不同环境下所需文件,而properties 配置的子标签会替换yml文件中的变量,并且可以在application.yml文件中 使用@@ 占位符引用
三、maven 打包
根据不同环境选择是dev还是pro ,使用package 命令 打包即可。