public Integer saveTemp(final List<Temp>temp){
int size=0;
getSqlMapClientTemplate().execute(new SqlMapClientCallback(){
public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
executor.startBatch();
int count=0;
for(Temp Temp:temp){
count++;
if(temp.size()%100==0){
logger.debug("执行第["+count+"]个200条数据...");
executor.insert("Temp.saveTemp",Temp);
}
}
int size=executor.executeBatch();
logger.debug("本次批量操作共执行了["+size+"]条数据...");
return null;
}
});
return size;
}
public void batchInsert(final List<Temp> temp) throws Exception{
this.getSqlMapClientTemplate().execute(new SqlMapClientCallback(){
public Object doInSqlMapClient(SqlMapExecutor executor)
throws SQLException {
executor.startBatch();
int batch = 0;
for(Temp Temp:temp){
//调用获取sequence的方法。如果没有的话就去掉这行代码。
//TreeCate.setTreeCateId(getNextId());
//参数1为:ibatis中需要执行的语句的id
executor.insert("Temp.saveTemp", Temp);
batch++;
//每500条批量提交一次。
if(batch==50000){
executor.executeBatch();
batch = 0;
}
}
executor.executeBatch();
return null;
}
});
}
ibatis批处理
最新推荐文章于 2018-08-26 21:20:57 发布