問題描述
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc14</artifactId>
<version>10.2.0.1.0</version>
<scope>runtime</scope>
</dependency>
明明導入了maven座標,但是卻無法從中央倉庫下載jar包
這是因爲oracle不知從哪個版本開始,禁止開發者從中央倉庫下載jar包了,需要我們在本地進行配置
解決步驟
-
在安裝了oracle服務器端的主機上找到oracle的安裝目錄下的Readme.txt,如下:
記下版本號,比如我的就是:10.2.0.1.0
-
繼續在安裝目錄下找到ojdbc14.jar,如下:
把該jar包複製到安裝了oracle客戶端的主機任意位置下,比如我複製到F盤根目錄,如下:
-
在安裝了oracle客戶端的主機上以管理員權限運行CMD,如下:
mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=10.2.0.1.0 -Dpackaging=jar -Dfile=F:\ojdbc14.jar
注意:版本號和路徑要一一對應
-
查看maven的本地倉庫,如下:
發現已經配置完成了,在本地倉庫已經有jar包了 -
導入座標,如下:
測試用例
package com.zzq.oracle;
import org.junit.Test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class OracleDemo {
@Test
public void javaCallOracle() throws Exception {
//加載數據庫驅動
Class.forName("oracle.jdbc.driver.OracleDriver");
//得到Connection連接
Connection connection = DriverManager.getConnection("jdbc:oracle:thin:@192.168.28.128:1521:orcl", "zzq", "password");
//得到預編譯的Statement對象
PreparedStatement pstm = connection.prepareStatement("select * from emp where empno = ?");
//給參數賦值
pstm.setObject(1, 7788);
//執行數據庫查詢操作
ResultSet rs = pstm.executeQuery();
//輸出結果
while (rs.next()) {
System.out.println(rs.getString("ename"));
}
//釋放資源
rs.close();
pstm.close();
connection.close();
}
}
效果如下: