是关于JdbcTemplate批量操作方法的, 很少用, 备注一下!
public int[] batchUpdate(String jdbcTemplateId, String sql, final List<Map<String, String>> rows,
final List<String> columnNames, final Map<String, String> columnTypes) throws Exception {
JdbcTemplate jdbcTemplate = jdbcTemplates.get(jdbcTemplateId);
BatchPreparedStatementSetter pss = new BatchPreparedStatementSetter() {
public void setValues(PreparedStatement ps, int i) throws SQLException {
Map<String, String> row = rows.get(i);
if (DbUtils.isInvalidRow(row)) {
return;
}
int columnIndex = 0;
for (String columnName : columnNames) {
Object value = DbUtils.convertValue(row, columnName, columnTypes);
ps.setObject(++columnIndex, value);
}
}
public int getBatchSize() {
return rows.size();
}
};
return jdbcTemplate.batchUpdate(sql, pss);
}
分享到:
相关推荐
BatchPreparedStatementSetter的用法 一.创建表; 二.配置applicationcontext.xml; 三.创建类。
2. 接着,创建了一个`BatchPreparedStatementSetter`实例。这个接口用于设置`PreparedStatement`的参数值,以便于执行批量操作。在`setValues`方法中,每个`indicesDataList`的元素(假设为`NdsysIndicesdataM`对象...
首先,SpringJDBC提供了一个抽象层,它将传统的JDBC API封装起来,减少了手写模板代码的需求,使得数据库操作更加简洁、易读。通过使用Spring的JdbcTemplate和NamedParameterJdbcTemplate,开发者可以避免处理连接...
在这个例子中,`batchInsert`方法接收一个实体列表,创建一个SQL插入语句,并使用`BatchPreparedStatementSetter`来设置每个实体的值。`getBatchSize`返回列表的大小,这将是执行的批次数量。 在`JdbcTemplate`内部...
在这个实例源码中,我们看到的是一个基于`epet`宠物项目的完整实现,该项目可能包括了创建、查询、更新和删除(CRUD)数据库记录的操作。这个项目不仅包含了源代码,还预设了完整的数据库,因此非常适合学习和理解...
在Java的Spring框架中,Spring JDBC(Java Database Connectivity)是一个重要的模块,用于简化数据库操作。Spring JDBC通过提供JdbcTemplate和SimpleJdbcTemplate等工具类,帮助开发者以更安全、更易于管理的方式与...
`RowMapper`接口用于将结果集中的每一行映射为一个对象,通过`JdbcTemplate.query(sql, params, MyRowMapper)`可以返回一个经过处理的对象列表。即使只是查询单条记录,也可以使用带有`RowMapper`的`query`方法,只...
"spring封装jdbc查询"是Spring框架中的一个核心功能,旨在简化传统的JDBC(Java Database Connectivity)操作,提高代码的可读性和可维护性,同时减少数据库操作中的潜在错误。以下是对这个主题的详细阐述: 首先,...
**JdbcTemplate**是Spring框架中的一个核心组件,主要用于简化Java应用程序与数据库之间的交互。它提供了一种声明式的方式来执行SQL语句,使得开发者无需直接操作JDBC API,从而减少了代码量,提高了可读性和可维护...
DbUtils是中国开源软件Apache Commons项目中的一个模块,全称为Apache Commons DbUtils,它是一个轻量级的数据库操作工具库,旨在简化Java应用程序对数据库的访问。DbUtils的主要目的是减轻开发人员处理数据库操作时...
- **SimpleJDBCInsertClass**:这个类提供了一个简单的方法来执行插入操作,它会自动构建SQL语句并处理参数绑定。 - **SimpleJdbcCallClass**:这个类则专门用于调用存储过程或函数,支持输入和输出参数的设置。 -...
【quest-spring-jdbc-insert】项目是一个专注于Spring JDBC插入操作的示例库,它展示了如何在Java应用程序中使用Spring框架的JDBC模块进行数据插入。这个项目对于学习和理解Spring JDBC的基本用法,以及如何有效地...
在Spring框架中,`JdbcTemplate`是用于简化Java数据库连接(JDBC)操作的一个核心组件。这个类提供了很多方法来执行SQL查询、更新语句,包括批处理操作。本篇文章将详细探讨`batchUpdate`方法及其在实际开发中的应用...
其次,Spring的JdbcTemplate是JDBC的一个轻量级封装,它简化了数据库操作,提供了更安全、更易于使用的API。尽管JdbcTemplate在便利性上优于直接的JDBC,但在性能上与JDBC相近,因为它仍然依赖于底层的JDBC批处理...
可以直接把一个PO类存到数据库通过PO类和一个id可以获取到该对象通过PO类可以直接update数据库记录不需要实现 BatchPreparedStatementSetter, 就可以批量update通过一个对PO对象删除对应的数据库记录依然可以使用...
`RowMapper`是一个接口,我们通常会实现它的`mapRow(ResultSet rs, int rowNum)`方法来将结果集中的每一行转换为所需的对象。 2. **参数化查询**:为了防止SQL注入,Spring提供了`queryForList(String sql, Object...
All Classes ...BatchPreparedStatementSetter BatchSqlUpdate BeanClassLoaderAware BeanComponentDefinition BeanConfigurerSupport BeanCreationException BeanCreationNotAllowedException ...