Mybatis 分批次新增插入数据

public void insertSelective(List<SsoNews> ssoNews) {
    //限制条数
    int pointsDataLimit = 1000;
    Integer size = ssoNews.size();
    //判断是否有必要分批
    if(pointsDataLimit<size){
        //分批数
        int part = size/pointsDataLimit;
        for (int i = 0; i < part; i++) {
            //1000条插入一次
            List<SsoNews> listPage = ssoNews.subList(0, pointsDataLimit);
            ssoNewsMapper.inserlist(listPage);
            //剔除已经插入的
            ssoNews.subList(0, pointsDataLimit).clear();
        }
        if (ssoNews.size()>0){
            //新增最后剩下的
            ssoNewsMapper.inserlist(ssoNews);
        }
    }else if(size!=0){
        ssoNewsMapper.inserlist(ssoNews);
    }
}

 

posted @ 2020-08-25 09:27  ExpectoPatronum—S  阅读(484)  评论(0编辑  收藏  举报