springboot 手動開啓事務,分段提交.

List<OrdLogSyn> ordLogSynList = ordLogSynMapper.batchQuery("AP", "20190926", "0", "1000");
        for (int i = 0; i < 2; i++) {
            DefaultTransactionDefinition def = new DefaultTransactionDefinition();
            def.setPropagationBehavior(DefaultTransactionDefinition.PROPAGATION_REQUIRES_NEW);
            TransactionStatus status = platformTransactionManager.getTransaction(def);
            List<OrdLogSyn> subList = null;
            if (i==0){
                subList = ordLogSynList.subList(0, 500);
            }else if (i==1){
                subList = ordLogSynList.subList(501, 1000);
            }
            for (OrdLogSyn ordLogSyn : subList) {
                int q = ordLogSynMapper.updateChkFlag(ordLogSyn.getConfirmSeqId(), ordLogSyn.getAcctDate(), "I");
                System.out.println("q = " + q);
            }
            platformTransactionManager.commit(status);

        }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章