JAVA连接数据库步骤及工具类分享
原创
52cxy
07-17 11:39
阅读数:750
JDBC编程基本步骤
使用JDBC连接数据库的基本步骤通常如下:
加载数据库驱动程序:使用Class.forName()方法加载特定数据库的驱动程序类。
建立数据库连接:使用DriverManager.getConnection()方法建立与数据库的连接,该方法返回一个Connection对象。
创建和执行SQL语句:使用Connection对象创建Statement、PreparedStatement或CallableStatement对象,然后使用它们执行SQL语句。
处理查询结果:如果SQL语句是查询语句,则通过ResultSet对象获取查询结果,并进行相应的处理。
关闭连接和释放资源:在完成数据库操作后,必须关闭ResultSet、Statement和Connection对象,以释放资源并防止内存泄漏。
JAVA连接数据库工具类:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class JDBCUtil {
// JDBC数据库连接地址及用户名密码
private static final String URL = "jdbc:mysql://localhost:3306/db_name";
private static final String USERNAME = "username";
private static final String PASSWORD = "password";
// 静态代码块,加载数据库驱动程序,以MYSQL为例
static {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
// 获取数据库连接的方法
public static Connection getConnection() throws SQLException {
return DriverManager.getConnection(URL, USERNAME, PASSWORD);
}
// 关闭数据库资源的方法(ResultSet、Statement、Connection)
public static void close(Connection conn, PreparedStatement pstmt, ResultSet rs) {
try {
if (rs != null) {
rs.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
try {
if (pstmt != null) {
pstmt.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
try {
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
// 示例:执行查询并处理结果集的方法
public static void query(String sql) {
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
conn = getConnection();
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
// 处理查询结果
while (rs.next()) {
// 示例:输出结果集中的数据
System.out.println(rs.getString("column_name"));
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
close(conn, pstmt, rs);
}
}
// 示例:执行更新操作的方法
public static int update(String sql) {
Connection conn = null;
PreparedStatement pstmt = null;
int result = 0;
try {
conn = getConnection();
pstmt = conn.prepareStatement(sql);
result = pstmt.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally {
close(conn, pstmt, null);
}
return result;
}
// 测试示例:主方法,用于测试
public static void main(String[] args) {
// 示例:查询操作
String querySql = "SELECT * FROM table_name";
query(querySql);
// 示例:更新操作
String updateSql = "UPDATE table_name SET column_name = value WHERE condition";
int rowsUpdated = update(updateSql);
System.out.println("Rows updated: " + rowsUpdated);
}
}共0条评论