一张表数据分到几张表性能优化

Posted on 2016-04-14 04:06  nemorick  阅读(147)  评论(0)    收藏  举报

最近在做一个银行项目,从一张表(CCB_CREDIT_TRX)里要往七、八张表写数据,

 

一开始的做法是把这张表对应的实体select出来,放到一个List集合中,再对这个LIST

List<CcbCreditTrx> list = new ArrayList<CcbCreditTrx>;
//对这个List遍历
for(CcbCreditTrx ccbCreditTrx:list) {
  //这里处理对其他表的操作
//表A 。。。。
   //表B  。。。。
   //表C  。。。。

}

建议做法

先查出全部A,全部B,全部C

List<A> listA = aDao.findAll();

List<B> listB = bDao.findAll();

List<C> listC = cDao.findAll();

for(CcbCreditTrx ccbCreditTrx:list) {
  //装个计数器,每500个提交一次
  process(listA,listB,listC,ccbCreditTrx);

}

private void process(List<A> alist,
List<B> blist,List<C> clist) {
// 处理
}
)

 

博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3