使用最新版本的mybatis。有一个mapper和DAO。进行批量插入。它工作但我想知道插入了多少行。在JDBC中,我可以将更新计数作为一个int数组。我怎样才能在mybatis / ibatis中得到它?
Mapper..
@Insert(NEW_ORDER)
int create(final OrderBatch order); // represents one row to insert
DAO...
public int createOrders(SqlSession session, List<OrderBatch> orders) {
OrderBatchMapper mapper = session.getMapper(OrderBatchMapper.class);
for (OrderBatch order : orders) {
// HOW CAN I GET THE int[] or int of update count?
i = mapper.create(order);
}
return i;
}
谢谢
答案 0 :(得分:1)
使用批处理时,在事务结束或调用flushStatements时执行语句。
执行此
List<BatchResult> results = session.flushStatements();
应该适合你。