java學習:jdbc連接示例


java中最常用的數據庫連接技術就是JDBC

目前幾乎所有的主流數據庫都提供了相應的jdbc驅動,可以簡單理解為.net中的數據庫客戶端dll,.net中如果對於netframework默認不支持的數據庫(比如sqllite,mysql之類),就必須要下載專門的數據庫客戶端dll文件,在vs.net中添加該dll的引用,然后就可以用它來連接數據庫。

jdbc也是同樣的道理,jdk默認安裝后,幾乎沒帶什么jdbc驅動,需要到各數據庫提供商網站下載對應的jdbc驅動,以mysql為例,下載mysql jdbc驅動后(百度搜索 “mysql jdbc”就行),會得到一個mysql-connector-java-5.1.22-bin.jar的文件,把它復制到 \jdk\jre\lib\ext 目錄下(這樣程序運行時,通過ClassPath就能找到該文件)

然后就可以寫代碼連接了,示例代碼 :

package jmyang.jdbctest;

import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.Connection;

public class MySqlTest {
    public static void main(String[] args) {
        Connection conn = null;
        try {

            // 加載mysql驅動程序
            Class.forName("com.mysql.jdbc.Driver");
            // 連接localhost上的mysql,並指定使用test數據庫,用戶名為root,密碼為***
            conn = DriverManager.getConnection("jdbc:mysql://localhost/test",
                                               "root", "***");
            if (!conn.isClosed()) {
                System.out.println("數據庫連接成功!"); //驗證是否連接成功
            }

            Statement statement = conn.createStatement();
            //查詢數據
            ResultSet rs = statement.executeQuery("select * from person");

            //輸出結果集(類似.net中的DataSet/DataTable)
            while (rs.next()) {
                System.out.println("id=" + rs.getInt("Id") + ",name=" +
                                   rs.getString("Name"));
            }
            rs.close();

        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (conn != null) {
                try {
                    conn.close();
                    conn = null;
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        }

    }
}

下面是oracle 11g Express版連接的示例:

oracle 11g安裝后,在jdbc目錄下,會有 ojdbc5.jar,ojdbc6.jar,ojdbc6_g.jar 三個包,其中ojdbc5適用於jdk1.5及以上版本,另外二個適用於jdk1.6及以上版本。

注:經我實際測試,如果搞不清自己的jdk版本號,直接把ojdbc5.jar,ojdbc6.jar二個文件都復制到 \jdk\jre\lib\ext下 也可以。

            Class.forName("oracle.jdbc.driver.OracleDriver");
            // 連接localhost上的oracle,用戶名為yangjm,密碼為***,SID為XE,端口號1521,oracle服務器IP:localhost
            conn = DriverManager.getConnection("jdbc:oracle:thin:@//localhost:1521/XE",
                                               "yangjm", "***");

 與mysql示例代碼的區別僅在於:加載的驅動不同  以及 getConnection時指定的url不同

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM