Browse Source

add methods

Looly 5 years ago
parent
commit
e62a91ca38
2 changed files with 38 additions and 0 deletions
  1. 1 0
      CHANGELOG.md
  2. 37 0
      hutool-db/src/main/java/cn/hutool/db/AbstractDb.java

+ 1 - 0
CHANGELOG.md

@@ -9,6 +9,7 @@
 * 【core  】     lock放在try外边(pr#1050@Github)
 * 【core  】     MailUtil增加错误信息(issue#I1TAKJ@Gitee)
 * 【core  】     JschUtil添加远程转发功能(pr#171@Gitee)
+* 【db    】     AbstractDb增加executeBatch重载(issue#1053@Github)
 
 ### Bug修复#
 * 【core  】     重新整理农历节假日,解决一个pr过来的玩笑导致的问题

+ 37 - 0
hutool-db/src/main/java/cn/hutool/db/AbstractDb.java

@@ -251,6 +251,25 @@ public abstract class AbstractDb implements Serializable {
 	/**
 	 * 批量执行非查询语句
 	 *
+	 * @param sql         SQL
+	 * @param paramsBatch 批量的参数
+	 * @return 每个SQL执行影响的行数
+	 * @throws SQLException SQL执行异常
+	 * @since 5.4.2
+	 */
+	public int[] executeBatch(String sql, Iterable<Object[]> paramsBatch) throws SQLException {
+		Connection conn = null;
+		try {
+			conn = this.getConnection();
+			return SqlExecutor.executeBatch(conn, sql, paramsBatch);
+		} finally {
+			this.closeConnection(conn);
+		}
+	}
+
+	/**
+	 * 批量执行非查询语句
+	 *
 	 * @param sqls SQL列表
 	 * @return 每个SQL执行影响的行数
 	 * @throws SQLException SQL执行异常
@@ -266,6 +285,24 @@ public abstract class AbstractDb implements Serializable {
 		}
 	}
 
+	/**
+	 * 批量执行非查询语句
+	 *
+	 * @param sqls SQL列表
+	 * @return 每个SQL执行影响的行数
+	 * @throws SQLException SQL执行异常
+	 * @since 5.4.2
+	 */
+	public int[] executeBatch(Iterable<String> sqls) throws SQLException {
+		Connection conn = null;
+		try {
+			conn = this.getConnection();
+			return SqlExecutor.executeBatch(conn, sqls);
+		} finally {
+			this.closeConnection(conn);
+		}
+	}
+
 	// ---------------------------------------------------------------------------- CRUD start
 
 	/**