2011-10-19 25 views
3

mybatisの最新バージョンの使用。マッパとDAOがいます。バッチインサートを実行する。その作業ですが、挿入された行の数がわかります。 JDBCでは、int配列として更新カウントを取得できます。これをmybatis/ibatisでどのように取得できますか?トランザクションが終了するとき、またはflushStatementsが呼び出されたとき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; 
    } 

おかげ

答えて

1

バッチを使用して、文が実行されます。この

List<BatchResult> results = session.flushStatements(); 

を実行

はあなたのために働く必要があります。