`JdbcTemplate` 是 Spring 框架中提供的一个简化 JDBC 操作的工具类,它封装了 JDBC 的核心功能,使得开发者能够更方便、简洁地进行数据库操作。
下面是一个使用 `JdbcTemplate` 进行批量插入的示例:
import org.springframework.jdbc.core.BatchPreparedStatementSetter;
import org.springframework.jdbc.core.JdbcTemplate;
import javax.sql.DataSource;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.List;
public class BatchInsertExample {
private final JdbcTemplate jdbcTemplate;
public BatchInsertExample(DataSource dataSource) {
this.jdbcTemplate = new JdbcTemplate(dataSource);
}
public void batchInsert(List<YourEntity> entities) {
String sql = "INSERT INTO your_table (column1, column2, ...) VALUES (?, ?, ...)";
jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter() {
@Override
public void setValues(PreparedStatement ps, int i) throws SQLException {
YourEntity entity = entities.get(i);
ps.setXXX(1, entity.getXXX()); // 设置参数值,XXX 代表你的数据类型和方法
ps.setXXX(2, entity.getXXX());
// ... 为其他列设置值
}
@Override
public int getBatchSize() {
return entities.size();
}
});
}
}
在这个示例中,`YourEntity` 是你的数据实体类,`your_table` 是你的数据库表名,`column1, column2, ...` 是表的列名。你需要根据实际情况替换这些占位符。