Java 是一種非常流行的編程語(yǔ)言,而 MySQL 是一種流行的關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng),這兩個(gè)技術(shù)的結(jié)合可以讓我們開(kāi)發(fā)出高效、可靠的應(yīng)用程序。本文將介紹 Java 連接 MySQL 數(shù)據(jù)庫(kù)的方式。
在 Java 中連接 MySQL 可以使用 JDBC API。JDBC 全稱(chēng)是 Java Database Connectivity,它是 Java 語(yǔ)言訪問(wèn)關(guān)系型數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)接口。在使用 JDBC 連接數(shù)據(jù)庫(kù)之前,我們需要引入 MySQL Connector/J 驅(qū)動(dòng)。
// 加載 MySQL JDBC 驅(qū)動(dòng) Class.forName("com.mysql.jdbc.Driver");
在加載 JDBC 驅(qū)動(dòng)之后,便可以通過(guò)以下代碼與 MySQL 數(shù)據(jù)庫(kù)建立連接,并創(chuàng)建連接對(duì)象。
// 建立連接 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","password");
在建立連接之后,我們可以通過(guò)連接對(duì)象創(chuàng)建 Statement 對(duì)象,用于執(zhí)行 SQL 語(yǔ)句并返回結(jié)果,或者直接通過(guò)連接對(duì)象執(zhí)行 PreparedStatement 對(duì)象,用于執(zhí)行預(yù)編譯 SQL 語(yǔ)句。
// 創(chuàng)建 Statement 對(duì)象 Statement stmt = conn.createStatement(); // 執(zhí)行 SQL 語(yǔ)句并返回結(jié)果 ResultSet rs = stmt.executeQuery("select * from user");
除了使用 Statement 對(duì)象執(zhí)行 SQL 語(yǔ)句,我們還可以使用 PreparedStatement 對(duì)象執(zhí)行預(yù)編譯 SQL 語(yǔ)句,這可以提高 SQL 語(yǔ)句的執(zhí)行效率。
// 創(chuàng)建 PreparedStatement 對(duì)象 PreparedStatement pstmt = conn.prepareStatement("insert into user values(?, ?)"); // 設(shè)置參數(shù) pstmt.setString(1, "張三"); pstmt.setInt(2, 20); // 執(zhí)行 SQL pstmt.executeUpdate();
最后,當(dāng)我們使用完連接對(duì)象之后,需要顯式地關(guān)閉連接和資源,以免資源泄漏。
// 關(guān)閉連接和資源 rs.close(); stmt.close(); pstmt.close(); conn.close();
總結(jié):Java 連接 MySQL 數(shù)據(jù)庫(kù)需要使用 JDBC API,引入 MySQL Connector/J 驅(qū)動(dòng),建立連接對(duì)象,創(chuàng)建 Statement 或 PreparedStatement 對(duì)象執(zhí)行 SQL,關(guān)閉連接和資源。