资源过滤与变量替换
修改 pom.xml ,在 build 节点中添加如下配置
<filters><filter>src/main/resources/filters/db_${env}.properties</filter></filters><resources><resource><directory>src/main/resources</directory><filtering>true</filtering></resource> </resources>
这里我们利用 filter 实现对资源文件(resouces) 过滤 maven filter可利用指定的xxx.properties中对应的key=value对资源文件中的${key}进行替 换,最终把你的资源文件中的 username=${key}替换成 username=value
2.3.4 打包
在 pinyougou-dao 工程 执行命令:package -P pro , 解压生成的 jar 包,观察 db.properties 配置文件内容,已经替换为生产环境的值。
在 pinyougou-sellergoods-service 工程 执行命令 pageage ,解压生成的 war 包里的
pinyougou-dao 的 jar 包,发现也是生成环境的值。
2.3.5 测试运行
【1】连接生产数据库
(1)在 pinyougou-dao 工程执行命令:install -P pro
(2)在 pinyougou-sellergoods-service:执行命令:tomcat7:run
(3)在 pinyougou-shop-web : 执行命令:tomcat7:run
【2】连接开发数据库
(1)在 pinyougou-dao 工程执行命令:install -P dev (或 install )
(2)在 pinyougou-sellergoods-service:执行命令:tomcat7:run
(3)在 pinyougou-shop-web : 执行命令:tomcat7:run
2.4 切换注册中心连接配置
2.4.1 集中配置注册中心地址
(1)在 pinyougou-common 工程中 properties 下创建 dubbox.properties
address=192.168.25.135:2181
(2)Spring 目录下创建 spring 配置文件 applicationContext-dubbox.xml 配置如下:
<dubbo:registry protocol="zookeeper" address="${address}"/>
(3)所有的服务工程与 web 工程都要依赖 pinyougou-common . 并删除每个工程中关于注 册中心地址的配置
(4)安装 pinyougou-common 到本地仓库,然后测试运行。
2.4.2 MavenProfile 配置
(1)在 pinyougou-common 工程中创建 filters 目录 ,目录下建立 dubbox_dev.properties
env.address=192.168.25.135:2181
(2)建立 dubbox_pro.properties
env.address=192.168.25.136:2181
(3)修改 dubbox.properties
address=${env.address}
(4)修改 pinyougou-common 的 pom.xml
<properties><env>dev</env>
</properties><profiles><profile><id>dev</id><properties><env>dev</env></properties></profile><profile><id>pro</id><properties><env>pro</env></properties></profile>
</profiles>
............................. <build><filters><filter>src/main/resources/filters/dubbox_${env}.properties</filter></filters><resources><resource><directory>src/main/resources</directory><filtering>true</filtering></resource> </resources> </build>
转载于:https://blog.51cto.com/13517854/2312917