Java資料庫編程

來源:互聯網
上載者:User

標籤:

      JDBC是java中提供的一套資料庫編程API,它定義了一套用來訪問資料庫的標準Java類庫(位於java.sql和javax.sql包中)。通過JDBC,我們可以用java編寫程式,實現與特定的資料庫進行串連,向資料庫發送SQL語句,實現對資料庫的特定操作,並對資料庫返回的結果進行處理。

      JDBC編程步驟:

      步驟一:根據應用程式所用的資料庫,選擇JDBC驅動程式類型;

      步驟二:串連到資料庫,得到Connection對象;

      步驟三:通過Connection建立Statement對象;

      步驟四:使用Statement對象提交SQL語句;

      步驟五:操作結果集;

      步驟六:回收資料庫資源。

      JDBC驅動程式分為四個類型:

      JDBC-ODBC Bridge: JDBC-ODBC橋 由SUN公司提供通用的驅動,能訪問各種資料庫,但效率極低。

      Native-API partly-Java driver: 本地庫Java驅動程式 執行效率高,用戶端必須安裝本地驅動,維護不方便。

      net-protocal all-Java driver(JDBC Proxy) 網路通訊協定純Java驅動程式(通用) 用戶端不必安裝本地庫,使用方便,但效能相對較低。

      native-protocal all-Java driver: 本地協議完全Java驅動程式 將JDBC調用轉化為特定資料庫的網路通訊協定,效率很高。

      載入驅動,通過調用Class類的靜態方法forName()顯式地載入驅動:例如:

     

Class.forName(驅動程式類);

下面我們來看一段代碼,以便我們瞭解如何去建立資料庫連接:

import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;/** * JDBC測試 *  * @author Administrator * */public class JDBCDemo3 {    public static void main(String[] args) {        Connection conn = null; // 連線物件        Statement stmt = null; // Statement對象        /* 載入驅動 */        try {            Class.forName("com.mysql.jdbc.Driver");        } catch (ClassNotFoundException e) {            e.printStackTrace();        }        /* 建立Connection對象 */        // 連接字串        String url = "jdbc:mysql://localhost:3306/jdbc";        // 使用者名稱        String user = "root";        // 密碼        String password = "123456";        try {            // 建立串連            conn = DriverManager.getConnection(url, user, password);        } catch (SQLException e) {            e.printStackTrace();        }
    
     /* 執行的是添加多條資料到資料庫中去 */ try { stmt = conn.createStatement(); stmt.addBatch("INSERT INTO users VALUES(5, ‘tom1‘, ‘000000‘)"); stmt.addBatch("INSERT INTO users VALUES(6, ‘tom2‘, ‘000000‘)"); stmt.addBatch("INSERT INTO users VALUES(7, ‘tom3‘, ‘789000‘)"); stmt.addBatch("INSERT INTO users VALUES(8, ‘tom4‘, ‘456000‘)"); stmt.addBatch("INSERT INTO users VALUES(9, ‘tom5‘, ‘123‘)"); stmt.executeBatch(); } catch (SQLException e1) { e1.printStackTrace(); } /* 釋放資源:必做 */ try { if (stmt != null) stmt.close(); } catch (SQLException e) { e.printStackTrace(); } finally { if (conn != null) try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } }}

 

Java資料庫編程

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.