与数据库的交互操作永远是一个框架的评判标准,什么项目都离不开数据库,这次我们来看看ibatis该怎么批量实现insert吧。
在ibatis框架中使用回调接口就可以实现数据的批量操作,减少对数据库的访问次数,提高性能。
例:/**
* ibatis批量插入数据
* @param recordList
*/
public void insertRecordByList(final List recordList)
{
this.getSqlMapClientTemplate()
.execute(new SqlMapClientCallback()
{
public Object doInSqlMapClient(SqlMapExecutor executor)
throws SQLException
{
executor.startBatch();
// 每次提交最大条数
final int batchSize = 200;
int count = 0;
for (Record record: recordList)
{
executor.insert("Record.insertRecord", record);
// 每200条数据提交一次
if (++count % batchSize == 0)
{
executor.executeBatch();
}
}
// 提交剩余的数据
executor.executeBatch();
return null;
}
});
}
对应配置
insert into record
(id,
record,
insetDate)
values
(sequence_record.nextval,
#record#,
sysdate)
以上就是本篇文章的所有内容,更多有关java架构师详情,敬请关注奇Q工具网了解具体。
推荐阅读: