背景介绍
项目有开发、测试、生产至少有这三个环境,所需要的配置信息肯定不一样,所以打包的时候可以指定使用哪一个配置文件。
如测试环境使用:mvn package -P test,这时候的${env}的值就是test,打包的时候src/main/resources下的配置文件的占位符${xx.xx}将会被test.properties对应的xx.xx位置替换。
使用例子
首先添加pom.xml配置信息,filter指定环境配置文件目录,resources指定要替换的资源文件目录,profiles指定不同环境对应的匹配文件。
如spring-beans.xml是一个资源配置文件,里面的test.name通过在打包的时候占位符替换。
test.properties内容为:test.name=hi,test,其他文件类似。
整个maven结构
所以当我mvn package -P test 打完包后,去查看打成的包里面的spring-beans.xml的内容,就会变成以下替换完成的样子。
这样就实现了不同环境资源的配置,在打包编译期就确定下来。
近期热文推荐:
1.600+ 道 Java面试题及答案整理(2021最新版)
2.终于靠开源项目弄到 IntelliJ IDEA 激活码了,真香!
3.阿里 Mock 工具正式开源,干掉市面上所有 Mock 工具!
4.Spring Cloud 2020.0.0 正式发布,全新颠覆性版本!
觉得不错,别忘了随手点赞+转发哦!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。