Java語言與MySQL關(guān)系型數(shù)據(jù)庫的交互通常需要使用JDBC,也就是Java Database Connectivity,實(shí)現(xiàn)的是Java語言訪問關(guān)系型數(shù)據(jù)庫的一套標(biāo)準(zhǔn)接口。JDBC提供了大量的API,開發(fā)人員可以使用這些API完成大量的數(shù)據(jù)庫操作。
而在實(shí)際開發(fā)中,我們會(huì)經(jīng)常使用到JDBC與MySQL的組合,因此我們需要封裝JDBC代碼,以便更加便捷的使用這個(gè)組合。
下面給出Java MySQL JDBC封裝的示例代碼:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class JDBCConnection {
private static final String DRIVER_CLASS = "com.mysql.jdbc.Driver";
private static final String DB_URL = "jdbc:mysql://localhost:3306/test";
private static final String USERNAME = "root";
private static final String PASSWORD = "";
public static Connection getConnection() {
Connection conn = null;
try {
Class.forName(DRIVER_CLASS);
conn = DriverManager.getConnection(DB_URL, USERNAME, PASSWORD);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
public static void closeConnection(Connection conn, PreparedStatement ps, ResultSet rs) {
try {
if (rs != null) {
rs.close();
}
if (ps != null) {
ps.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
這段代碼實(shí)現(xiàn)了對(duì)MySQL數(shù)據(jù)庫的連接以及關(guān)閉。通過定義靜態(tài)變量表示連接的URL、用戶名和密碼,實(shí)現(xiàn)了代碼的可重用性。
示例代碼中的getConnection()和closeConnection()兩個(gè)方法都是靜態(tài)方法,所以我們不需要實(shí)例化JDBCConnection就可以使用它們。
有了這個(gè)JDBC封裝后,我們可以非常方便地連接和關(guān)閉MySQL數(shù)據(jù)庫,可以大大提高我們的工作效率。