diff --git a/src/main/java/cn/edu/hust/jdbc/JDBCHelper.java b/src/main/java/cn/edu/hust/jdbc/JDBCHelper.java index 00d4d2d..4a53609 100644 --- a/src/main/java/cn/edu/hust/jdbc/JDBCHelper.java +++ b/src/main/java/cn/edu/hust/jdbc/JDBCHelper.java @@ -1,15 +1,23 @@ package cn.edu.hust.jdbc; - +// import cn.edu.hust.conf.ConfigurationManager; +// import cn.edu.hust.constant.Constants; - +// import java.sql.Connection; +// import java.sql.DriverManager; +// import java.sql.PreparedStatement; +// import java.sql.ResultSet; +// import java.sql.SQLException; +// import java.util.List; +// import java.util.concurrent.ArrayBlockingQueue; +// import java.util.concurrent.LinkedBlockingQueue; // JDBCHelper类是一个用于管理数据库连接以及执行数据库相关操作的工具类, @@ -64,12 +72,13 @@ public class JDBCHelper { } catch (Exception e) { e.printStackTrace(); } - +// }; // 获取JDBCHelper类的唯一实例对象的静态方法,外部代码通过调用此方法获取该工具类的实例,进而使用其提供的数据库操作功能。 public static JDBCHelper getInstance() { return instance; + // } /** @@ -87,6 +96,7 @@ public class JDBCHelper { e.printStackTrace(); } return null; + // } /** @@ -98,10 +108,11 @@ public class JDBCHelper { */ public int excuteUpdate(String sql, Object[] params) { int re = 0; - +// Connection conn = null; + // PreparedStatement statement = null; - +// try { // 从连接池中获取一个数据库连接 conn = getConnection(); @@ -119,19 +130,24 @@ public class JDBCHelper { return re; } catch (Exception e) { + // e.printStackTrace(); } finally { // 无论是否执行成功,都需要将使用完的数据库连接归还到连接池中, // 如果连接对象不为空,尝试将其放回阻塞队列(queue),如果放回过程出现中断异常则打印栈追踪信息。 - if (conn!= null) { + if (conn!= null) + // + { try { queue.put(conn); } catch (InterruptedException e) { e.printStackTrace(); } } + // } return re; + // } // 定义一个内部接口QueryCallBack,该接口中定义了一个方法process,用于处理查询结果集(ResultSet)。 @@ -149,12 +165,13 @@ public class JDBCHelper { */ public void excuteQuery(String sql, Object[] params, QueryCallBack queryCallBack) { Connection conn = null; + // PreparedStatement statement = null; - +// try { // 从连接池中获取一个数据库连接 conn = getConnection(); - +// // 使用获取到的连接创建一个PreparedStatement对象,用于执行带参数的SQL语句 statement = conn.prepareStatement(sql); @@ -168,6 +185,7 @@ public class JDBCHelper { // 调用传入的回调接口对象的process方法,将结果集传递进去,由具体实现该接口的类来处理结果集数据。 queryCallBack.process(rs); + // } catch (Exception e) { } finally { @@ -179,8 +197,10 @@ public class JDBCHelper { } catch (InterruptedException e) { e.printStackTrace(); } + // } } + // } /** @@ -192,8 +212,11 @@ public class JDBCHelper { */ public int[] excuteBatch(String sql, List params) { Connection connection = null; + // PreparedStatement statement = null; + // int[] res = null; + // try { // 从连接池中获取一个数据库连接 @@ -209,8 +232,10 @@ public class JDBCHelper { for (Object[] param : params) { for (int i = 0; i < param.length; i++) { statement.setObject(i + 1, param[i]); + // } statement.addBatch(); + // } // 3. 批量执行所有添加到批处理队列中的SQL语句,返回一个整数数组表示每条语句受影响的行数。 @@ -218,7 +243,7 @@ public class JDBCHelper { // 4. 最后提交事务,将所有批量执行的SQL语句对数据库的修改统一提交,如果执行过程中出现异常则事务会回滚。 connection.commit(); - +// return res; } catch (SQLException e) { @@ -232,8 +257,12 @@ public class JDBCHelper { } catch (InterruptedException e) { e.printStackTrace(); } + // } } + // return res; + // } + // } \ No newline at end of file