maven-resource-profiles

maven-resource-profiles

​ 最近接到一个项目部署任务,拿着专业的眼神review了一遍,发现部署开发环境和生产环境还要通过手动指定properties,这个不是很Low吗,于是决定安排安排。

​ 因为之前在一个maven项目中看到使用profiles 动态注入参数的配置,于是赶紧花了5分钟cv。

pom中的片段
maven-resource-profiles
maven-resource-profiles

application.properties
maven-resource-profiles

applicationContext.xml

maven-resource-profiles

启动之后发现一切正常,服务也可以访问,功能也正常。但是当打成war包部署到服务器上之后,就发现网页乱码,经过层层分析,发现是因为pom.xml中配置的属性叫jdbc.url,application.xml中也是叫这个名字,所以打包的时候,applicaitionContext.xml中value直接被pom设置了值。

正确的resource 配置应该如下

maven-resource-profiles

关键参数:

filtering : maven 打包编译的时候是否会去解析该文件中的表达式${}

false: 不解析

true 解析

表达式${}

false: 不解析

true 解析

总结:所以学习到东西不能光看,实际操作才是最好的学习方式