可路正遥,今生如刀,浮沉随浪,记今朝。
早先项目都基本跟mySql和postgreSql打交道,所以在测试代码里,基本都是这两个数据库的配置。
这次项目里需要访问工厂的数据库oracle,所以需要在testNG的测试代码里加入oracle的配置信息。
- 首先说下Oracle Driver的问题,Maven仓库里是没有最新Oracle Driver的,所以你通过Gradle或者POM都无法引用到Oracle的包,需要你自己到oracle网址上下载。
Oracle Driver 官方下载地址,请点击
下载完相应Driver版本后,网上有建议利用下面的maven命令把下载下来的Driver安装到本地仓库。
mvn install:install-file -Dfile={Path/to/your/ojdbc.jar} -DgroupId=com.oracle -DartifactId=ojdbc7 -Dversion=12.1.0.2 -Dpackaging=jar
这样就可以在本地Maven仓库看到这个安装好的oracle jdbc jar包。这下就可以通过配置Gradle或POM配置使用Oracle Driver.
POM配置如下:
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc7</artifactId>
<version>12.1.0.2</version>
</dependency>
Gradle配置如下:
compile group: 'com.oracle', name: 'ojdbc7', version: '12.1.0.2'
这里划下重点
然而上面的方法,我都没有使用,因为我不知道怎么把这个jar包安装到公司的maven镜像服务器里,项目时间紧张,我采用下载完毕Oracle驱动后,就把它当做外部Jar包引用在了自己测试项目。
-
在项目的根目录下建立一个新的文件夹lib,并把这个oracle的driver放到了该lib文件下面
新建lib文件夹
-
在Gradle里配置该Driver的地址
compile files('lib/ojdbc7.jar')
- 搞定Oracle Driver后,然后我们需要在resources文件下建立一个Oracle的配置文件,提供给mybatis的Mapper文件使用,这里我建立了一个叫ConfigurationOracle.xml的文件,
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<typeAliases><!-- 别名 -->
<typeAlias alias="OEE" type="mapper.OEEMapper" />
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED"><!-- 数据源 -->
<property name="driver" value="oracle.jdbc.OracleDriver" />
<property name="url" value="jdbc:oracle:thin:@//SHI6W385.net.plm.eds.com:1521/sewcdev" />
<property name="username" value="sewcoee" />
<property name="password" value="mindoee" />
</dataSource>
</environment>
</environments>
<mappers><!-- ORM映射文件 -->
<mapper resource="mybatis/OEEMapper.xml" />
</mappers>
</configuration>
这里需要划下重点的是:
<property name="driver" value="oracle.jdbc.OracleDriver" />
<property name="url" value="jdbc:oracle:thin:@//SHI6W385.net.plm.eds.com:1521/sewcdev" />
第一个value一定是“oralce.jdbc.OracleDriver”, 不要问为什么,先这样做吧,不然会出错。
*第二个value@后面的语法需要解释下, 实际上它是这样的:
@//host_name:port_number/service_name
嗯,就是这样简单
额外说下,在上面这个ConfigurationOracle.xml里,mapper配置直接指向了resources/mybatis路径下的OEEMapper.xml。对,这样就完成了mybatis底层通信靠Oracle的目标。
至于Mapper文件里具体配置,(⊙o⊙)…如果有点赞,我再写吧。
网友评论