通过Maven配置测试环境和开发环境连接不同的数据库
摘要: 通过Maven配置测试环境和开发环境连接不同的数据库
"通过Maven配置测试环境和开发环境连接不同的数据库":关键词:通过 maven 配置 测试 环境 开发 环境 连接 不同 其他数据库
通过maven配置测试环境和开发环境连接不同的其他数据库
操作上分3个步骤
1.在数据持久层的pom中定义profiles,为开发和测试环境定义不同的profile
<profiles>
<profile>
<id>dev</id>
<activation>
<activebydefault>true</activebydefault>
</activation>
<properties>
<jdbc.driverclassname>com.mysql.jdbc.driver</jdbc.driverclassname>
<jdbc.url>jdbc:mysql://192.168.1.100:3306/test</jdbc.url>
<jdbc.username>test</jdbc.username>
<jdbc.password >test2011</jdbc.password >
</properties>
</profile>
<profile>
<id>test</id>
<properties>
<jdbc.driverclassname>com.mysql.jdbc.driver</jdbc.driverclassname>
<jdbc.url>jdbc:mysql://192.168.1.200:3306/test</jdbc.url>
<jdbc.username>test</jdbc.username>
<jdbc.password >test2011</jdbc.password >
</properties>
</profile>
</profiles>
定义id为dev的profile:jdbc.url属性为jdbc:mysql://192.168.1.100:3306/test
定义id为test的profile:jdbc.url属性为jdbc:mysql://192.168.1.200:3306/test
2.在数据持久层的pom中定义resources过滤
其他数据库 的配置放在/src/main/resources和/src/test/resources中,在pom中增加resource过滤
1 <build>
2 <resources>
3 <resource>
4 <directory>${project.basedir}/src/main/resources</directory>
5 <filtering>true</filtering>
6 </resource>
7 </resources>
8 <testresources>
9 <testresource>
10 <directory>${project.basedir}/src/test/resources</directory>
11 <filtering>true</filtering>
12 </testresource>
13 </testresources>
14 </build>
3.在/src/main/resources和/src/test/resources中定义jdbc连接文件jdbc.properties
1 jdbc.driverclassname=${jdbc.driverclassname}
2
3 jdbc.url=${jdbc.url}
4
5 jdbc.username=${jdbc.username}
6
7 jdbc.password =${jdbc.password }
经过了如上3个步骤后运行mvn命令会执行id为dev的profile(由于在id为dev的配置中增加了<activebydefault>true</activebydefault>的配置)
在mvn命令后增加 -ptest运行,会执行id为test的profile。
经过如上配置后,maven会在src/main/resources/ 和 /src/test/resources 中的文件中(即第3步骤配置的jdbc.properties)查找在profile中定义的属性(如jdbc.properties中的${jdbc.driverclassname}等等)。
通过Maven配置测试环境和开发环境连接不同的数据库的更多相关文章
- 使用maven配置scala Hadoop spark开发环境
1. 新建maven project 2. Group id : org.scala-tools.archetypes Artifact id : scala-archetype-simple Ver ...
- maven实战(01)_搭建开发环境
一 下载maven 在maven官网上可下载maven:http://maven.apache.org/download.cgi 下载好后,解压.我的解压到了:D:\maven\apache-mave ...
- 使用Maven搭建Struts2框架的开发环境
一.创建基于Maven的Web项目
- Maven Filter与Profile隔离生产环境与开发环境
Maven Filter与Profile隔离生产环境与开发环境 在不同的开发阶段,我们一般用到不同的环境,开发阶段使用开发环境的一套东西,测试环境使用测试环境的东西,可能有多个测试环境,生产环境使用的 ...
- Hadoop伪分布配置与基于Eclipse开发环境搭建
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- 在IntelliJ IDEA 13中配置OpenCV的Java开发环境
准备工作: 下载IDEA 13(这里以版本13为例,后面简称IDEA): 下载Java JDK(用于配置基本的Java开发环境): 下载OpenCV 2.4.9(这里以版本2.4.9为例,据这篇文章说 ...
- 《React Native 精解与实战》书籍连载「配置 iOS 与 Android 开发环境」
此文是我的出版书籍<React Native 精解与实战>连载分享,此书由机械工业出版社出版,书中详解了 React Native 框架底层原理.React Native 组件布局.组件与 ...
- spark-windows(含eclipse配置)下本地开发环境搭建
spark-windows(含eclipse配置)下本地开发环境搭建 >>>>>>注意:这里忽略JDK的安装,JDK要求是1.8及以上版本,请通过 java ...
- 在Fedora18上配置个人的Hadoop开发环境
在Fedora18上配置个人的Hadoop开发环境 1. 背景 文章中讲述了类似于"personalcondor"的一种"personal hadoop" ...
随机推荐
- 关于Trie Tree简单实现
最近突然有兴致hiho一下了,实现了下trie tree,感觉而言,还是挺有意思的,个人觉得这货不光可以用来查单词吧,其实也可以用来替代Hash,反正查找,插入复杂度都挺低的,哈哈,啥都不懂,瞎扯.. ...
- mybatis处理特殊符号
当我们需要通过xml格式处理sql语句时,经常会用到< ,<=,>,>=等符号,但是很容易引起xml格式的错误,这样会导致后台将xml字符串转换为xml文档时报错,从而导致程序 ...
- APICloud界面间跳转
UZModule提供属性controller,可通过该控制器对目标控制器进行push或者present操作. // push[self.viewController.navigationControl ...
- Linux文件系统简介及常用命令
在linux系统中一切皆是文件,下面简要总结了一下linux文件系统中分区类型.文件系统类型以及常用命令. 一.分区类型1.主分区:最多只能有四个2.扩展分区:只能有一个,也可以看做是主分区的一种.即 ...
- Python基础篇-day5
本节目录: 1.生成器 1.1 列表推导式方法 1.2 函数法--适用复杂的推导方法2.迭代器3.装饰器 3.1 单一验证方式(调用不传参数) 3.2 单一验证方式(调用传参数) 3.3 多种验证方式 ...
- 在cmd中设置字体
1.首先在cmd中输入chcp 65001 回车(通过 chcp命令改变代码页,UTF-8的代码页为65001) 2.右击命令提示符的标题栏点击属性. 3.在属性中选择字体后点击确认即可.
- proc中tran的一般处理
存储过程事物的处理 一般情况在proc中判断的处理我们都采用 ) begin select '错误' return end 而在tran中我们最好用抛异常的方式 begin try begin SET ...
- sql 针对多个id或名称的分割和组合
开发中经常遇到把多个id拼接在一起符号隔开传入数据库,那拆分呢就是个大事 SELECT nPushID INTO #temp FROM Table1 ), nCoulmn) SELECT * FROM ...
- java 方法学习
手写随机代码 public class suiji{private static final int N = 200;private static final int LEFT = 40;privat ...
- ThreadLocal线程本地变量
首先说明ThreadLocal存放的值是线程内共享的,线程间互斥的,主要用于线程内共享一些数据,避免通过参数来传递,这样处理后,能够优雅的解决一些实际问题,比如hibernate中的OpenSessi ...