主頁(yè) > 知識(shí)庫(kù) > 使用JDBC連接ORACLE的三種URL格式

使用JDBC連接ORACLE的三種URL格式

熱門標(biāo)簽:圖像地圖標(biāo)注 400電話是不是免費(fèi)申請(qǐng) 安陽(yáng)外呼系統(tǒng)免費(fèi) 呼倫貝爾智能手機(jī)地圖標(biāo)注 貴陽(yáng)電話外呼系統(tǒng)哪家好 海南400電話哪里辦理 南寧人工智能電銷機(jī)器人費(fèi)用 濟(jì)南地圖標(biāo)注公司 分布式呼叫中心

使用jdbc連接oracle時(shí)url有三種格式

格式一: Oracle JDBC Thin using an SID: 

jdbc:oracle:thin:@host:port:SID 
Example: jdbc:oracle:thin:@localhost:1521:orcl 

這種格式是最簡(jiǎn)單也是用得最多的

你的oracle的sid可以通過(guò)一下指令獲得:

sqlplus / as sysdba 
select value from v$parameter where name='instance_name';
import java.sql.*;
public class TestOrclConnect {
  public static void main(String[] args) {
    ResultSet rs = null;
    Statement stmt = null;
    Connection conn = null;
    try {
      Class.forName("oracle.jdbc.driver.OracleDriver");
      String dbURL = "jdbc:oracle:thin:@localhost:1521:orcl";
      conn = DriverManager.getConnection(dbURL, "admin2", "123");
      System.out.println("連接成功");
    } catch (ClassNotFoundException e) {
      e.printStackTrace();
    } catch (SQLException e) {
      e.printStackTrace();
    } finally {
      try {
        if (rs != null) {
          rs.close();
          rs = null;
        }
        if (stmt != null) {
          stmt.close();
          stmt = null;
        }
        if (conn != null) {
          conn.close();
          conn = null;
        }
      } catch (SQLException e) {
        e.printStackTrace();
      }
    }
  }
}

格式二:  Oracle JDBC Thin using a ServiceName: 

jdbc:oracle:thin:@//host:port/service_name 
Example:jdbc:oracle:thin:@//localhost:1521/orcl.city.com 

注意這里的格式,@后面有//, port后面:換成了/,這種格式是Oracle 推薦的格式,因?yàn)閷?duì)于集群來(lái)說(shuō),每個(gè)節(jié)點(diǎn)的SID 是不一樣的,但是SERVICE_NAME 確可以包含所有節(jié)點(diǎn)。

你的oracle的service_name可以通過(guò)以下方式獲得:

sqlplus / as sysdba 
select value from v$parameter where name='service_names';
import java.sql.*;
public class TestOrclConnect {
  public static void main(String[] args) {
    ResultSet rs = null;
    Statement stmt = null;
    Connection conn = null;
    try {
      Class.forName("oracle.jdbc.driver.OracleDriver");
      String dbURL = "jdbc:oracle:thin:@//localhost:1521/orcl.city.com";
      conn = DriverManager.getConnection(dbURL, "admin2", "123");
      System.out.println("連接成功");
    } catch (ClassNotFoundException e) {
      e.printStackTrace();
    } catch (SQLException e) {
      e.printStackTrace();
    } finally {
      try {
        if (rs != null) {
          rs.close();
          rs = null;
        }
        if (stmt != null) {
          stmt.close();
          stmt = null;
        }
        if (conn != null) {
          conn.close();
          conn = null;
        }
      } catch (SQLException e) {
        e.printStackTrace();
      }
    }
  }
}

格式三:Oracle JDBC Thin using a TNSName: 

jdbc:oracle:thin:@TNSName 
Example: jdbc:oracle:thin:@TNS_ALIAS_NAME

我在谷歌上找了一些資源,要實(shí)現(xiàn)這種連接方式首先要建立tnsnames.ora文件,然后通過(guò)System.setProperty指明這個(gè)文件路徑。再通過(guò)上面URL中的@符號(hào)指定文件中的要使用到的資源。

這種格式我現(xiàn)在水平幾乎沒(méi)見過(guò),對(duì)于我來(lái)說(shuō)用得到這種的情況并不多吧。當(dāng)然既然是通過(guò)配置文件來(lái)讀取指定資源肯定也可以直接將資源拿出來(lái)放在URL中,直接放在URL中的URL模版是下面這樣的(tnsnames.ora這個(gè)文件中放的就是@符號(hào)后面的那一段代碼,當(dāng)然用文件的好處就是可以配置多個(gè),便于管理):

jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL= TCP)(HOST=hostA)(PORT= 1522))(ADDRESS=(PROTOCOL=TCP)(HOST=your host)(PORT=1521)))(SOURCE_ROUTE=yes)(CONNECT_DATA=(SERVICE_NAME=your service_name)))

jdbc連接代碼如下:

“` 
import java.sql.*;
public class TestOrclConnect {
public static void main(String[] args) {
  ResultSet rs = null;
  Statement stmt = null;
  Connection conn = null;
  try {
    Class.forName("oracle.jdbc.driver.OracleDriver");
     String dbURL =
    "jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))"
    + "(CONNECT_DATA=(SERVICE_NAME=orcl.city.com)))";
    conn = DriverManager.getConnection(dbURL, "admin2", "123");
    System.out.println("連接成功");
  } catch (ClassNotFoundException e) {
    e.printStackTrace();
  } catch (SQLException e) {
    e.printStackTrace();
  } finally {
    try {
      if (rs != null) {
        rs.close();
        rs = null;
      }
      if (stmt != null) {
        stmt.close();
        stmt = null;
      }
      if (conn != null) {
        conn.close();
        conn = null;
      }
    } catch (SQLException e) {
      e.printStackTrace();
    }
  }
}
} 

總結(jié)

以上所述是小編給大家介紹的使用JDBC連接ORACLE的三種URL格式,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

您可能感興趣的文章:
  • Java如果通過(guò)jdbc操作連接oracle數(shù)據(jù)庫(kù)
  • Java使用Jdbc連接Oracle執(zhí)行簡(jiǎn)單查詢操作示例
  • jdbc連接oracle數(shù)據(jù)庫(kù)功能示例
  • Java開發(fā)Oracle數(shù)據(jù)庫(kù)連接JDBC Thin Driver 的三種方法
  • java基于JDBC連接Oracle 11g Release2實(shí)例分析
  • 通過(guò)JDBC連接oracle數(shù)據(jù)庫(kù)的十大技巧
  • JDBC連接Oracle數(shù)據(jù)庫(kù)常見問(wèn)題及解決方法
  • Oracle JDBC連接BUG解決方案

標(biāo)簽:滁州 遼源 涼山 許昌 郴州 合肥 焦作 南充

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《使用JDBC連接ORACLE的三種URL格式》,本文關(guān)鍵詞  使用,JDBC,連接,ORACLE,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《使用JDBC連接ORACLE的三種URL格式》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于使用JDBC連接ORACLE的三種URL格式的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章