package com.product.kt.test.service2; import java.util.Map; import com.google.common.collect.Maps; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.product.kt.test.config.SyncConfig; import net.minidev.json.JSONObject; @Service public class ToolsThread2 { private static final Logger LOG = LoggerFactory.getLogger(ToolsThread2.class); @Autowired SyncToolsHandler2 syncToolsHandler; // 连接map public static Map dataSourceMap = SyncConfig.DATA_SOURCE_MAP; // 同步表map public static Map readTableMap = SyncConfig.SYNC_TABLE_MAP; //每次读取数据量大小 public static int pageSize = SyncConfig.PAGE_SIZE; public void receiveBookJobRun() { if (!readTableMap.isEmpty()) { // 入库开始时间 Long inserOrUpdateBegin = System.currentTimeMillis(); LOG.info("数据更新开始时间:" + inserOrUpdateBegin); //遍历同步表 readTableMap.forEach((tableName, specialField) -> { String orderField = specialField.getAsString("order_field"); String timeField = specialField.getAsString("time_field"); dataSourceMap.forEach((sourceLinkUUID, targetLinkUUID) -> { syncToolsHandler.syncToolData(sourceLinkUUID, tableName, orderField, timeField); }); }); syncToolsHandler.clearExecutor(); Long inserOrUpdateEnd = System.currentTimeMillis(); LOG.info("数据更新结束时间:" + inserOrUpdateEnd + "。此次更新数据花费时间为:" + (inserOrUpdateEnd - inserOrUpdateBegin)); } } }