两个方法,只有波浪标识出的一行代码不一样,可是不知道怎么才能优化的更舒服?//导入数据
public Result importDate(final String pathToken) {
        logger.info("importToIndex parameter:" + pathToken);
        if (CheckUtil.isBlank(logger, pathToken)) {
            return Result.parameterIsNull;
        }
        // 设置分页总行数和页大小,用于分页
        Integer totalCount = 10000;
        Integer pageSize = 1000;
        // 线程计数器
        final CountDownLatch countDownLatch = new CountDownLatch(recordPage.getTotalPage());
        // 每个线程处理一页数据
        for (int i = 0; i <= 10; i++) {
            logger.debug("start deal with pageNo:" + i);
            ThreadPool.getInstance().work(new Runnable() {
                @Override
                public void run() {
                    List<LuceneRecord> recordList = loadData(totalCount,pageSize);
                    writeIndexDate(recordList, pathToken);
                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    countDownLatch.countDown();
                }
            });
        }
        // 所有线程任务完成后
        try {
            countDownLatch.await();
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        logger.debug("All task finished.");
        return Result.successed;
    }
    
//更新数据
public Result updateDate(final String pathToken) {
        logger.info("importToIndex parameter:" + pathToken);
        if (CheckUtil.isBlank(logger, pathToken)) {
            return Result.parameterIsNull;
        }
        // 设置分页总行数和页大小,用于分页
        Integer totalCount = 10000;
        Integer pageSize = 1000;
        // 线程计数器
        final CountDownLatch countDownLatch = new CountDownLatch(recordPage.getTotalPage());
        // 每个线程处理一页数据
        for (int i = 0; i <= 10; i++) {
            logger.debug("start deal with pageNo:" + i);
            ThreadPool.getInstance().work(new Runnable() {
                @Override
                public void run() {
                    List<LuceneRecord> recordList = loadData(totalCount,pageSize);
                    updateIndexDate(recordList, pathToken,this.getUpdateName);
                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    countDownLatch.countDown();
                }
            });
        }
        // 所有线程任务完成后
        try {
            countDownLatch.await();
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        logger.debug("All task finished.");
        return Result.successed;
    }