如何使用 ps.executeBatch();
时间: 2024-12-19 08:16:13 浏览: 7
`ps.executeBatch()`是在Java中使用JDBC(Java Database Connectivity)处理PreparedStatement批处理操作的一个方法。它主要用于一次发送多个SQL命令,提高了效率,减少了网络往返次数。以下是使用步骤:
1. **创建PreparedStatement**:首先,你需要通过Connection对象创建PreparedStatement,这通常是预编译的SQL语句,可以防止SQL注入攻击。
```java
Connection conn = DriverManager.getConnection(...);
String sql = "INSERT INTO table_name (column1, column2) VALUES (?, ?)";
PreparedStatement ps = conn.prepareStatement(sql);
```
2. **添加参数**:对于每个SQL命令,你可以使用`addXxx()`方法添加参数值,其中Xxx可能是`Int`, `String`, `Object`等,取决于参数类型。
```java
for (int i = 0; i < data.size(); i++) {
int id = data.get(i).getId();
String name = data.get(i).getName();
ps.setInt(1, id); // 第一个参数
ps.setString(2, name); // 第二个参数
}
```
3. **执行批量操作**:将所有参数设置好后,调用`executeBatch()`方法执行整个批次的SQL命令。
```java
int[] results = ps.executeBatch();
```
`results`数组将返回每个命令执行的结果码,如更新了多少行数据等。
4. **处理结果**:最后别忘了关闭资源,包括PreparedStatement和Connection。
```java
ps.close();
conn.close();
```
阅读全文