src/main/java/com/yssh/scheduled/ReadCsvTask.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/yssh/service/IDictRecordService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/yssh/service/impl/DictRecordServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/yssh/service/impl/SuYuanServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/application-file.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/application-scheduled.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/yssh/scheduled/ReadCsvTask.java
@@ -49,7 +49,7 @@ private int cronMax = 48; @Value("${csv.voc_max}") private int vocMax = 192; private int vocMax = 120; private final static List<String> md5List = new ArrayList<>(); @@ -88,7 +88,7 @@ try { logger.info("loadVocSync: " + filePath); Date date = (Date)calendar.getTime().clone(); Date date = (Date) calendar.getTime().clone(); EasyCsv.read(filePath, VocVals.class, new VocParser(vocValsService, date)).doRead(); // Thread.sleep(3 * 1000); @@ -127,18 +127,23 @@ } suYuanService.createNewTable(newTableName); dictRecordService.insertDictRecord(new DictRecord(1L, newTableName, Long.parseLong(time), "")); Long createTime = Long.parseLong(time); DictRecord dr = dictRecordService.selectByCreateTime(createTime); if (null == dr) { dictRecordService.insertDictRecord(new DictRecord(1L, newTableName, Long.parseLong(time), "")); } logger.info("loadCsvSync: " + filePath); EasyCsv.read(filePath, SuYuan.class, new CsvParser(suYuanService, time)).doRead(); try { // 计算预警/报警,并且进行入库操作 Thread.sleep(2 * 60 * 1000); } catch (InterruptedException e) { logger.error("睡眠一分钟后执行预警/报警计算,并且进行入库操作出现异常,异常原因是:", e); e.printStackTrace(); } // try { // // 计算预警/报警,并且进行入库操作 // Thread.sleep(2 * 60 * 1000); // } catch (InterruptedException e) { // logger.error("睡眠一分钟后执行预警/报警计算,并且进行入库操作出现异常,异常原因是:", e); // e.printStackTrace(); // } warningAnalyseService.warningOperationStorage(calendar.getTime()); } } src/main/java/com/yssh/service/IDictRecordService.java
@@ -2,7 +2,6 @@ import com.yssh.entity.DictRecord; import java.util.Date; import java.util.List; /** @@ -15,21 +14,31 @@ /** * 查询字典记录列表 * * @param dictRecord 字典记录 * @return 字典记录集合 */ public List<DictRecord> selectDictRecordList(DictRecord dictRecord); /** * 根据创建时间查询 * * @param createTime * @return */ public DictRecord selectByCreateTime(Long createTime); /** * 新增字典记录 * * @param dictRecord 字典记录 * @return 结果 */ public int insertDictRecord(DictRecord dictRecord); /** * 批量删除字典记录 * * @param ids 需要删除的数据ID * @return 结果 */ @@ -37,6 +46,7 @@ /** * 删除字典记录信息 * * @param id 字典记录ID * @return 结果 */ src/main/java/com/yssh/service/impl/DictRecordServiceImpl.java
@@ -1,17 +1,17 @@ package com.yssh.service.impl; import java.util.Date; import java.util.List; import lombok.Synchronized; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.yssh.dao.DictRecordMapper; import com.yssh.entity.DictRecord; import com.yssh.service.IDictRecordService; import javax.annotation.Resource; /** * 字典记录Service业务层处理 @@ -20,8 +20,7 @@ */ @Service public class DictRecordServiceImpl implements IDictRecordService { @Autowired @Resource private DictRecordMapper dictRecordMapper; /** @@ -35,6 +34,11 @@ return dictRecordMapper.selectDictRecordList(dictRecord); } @Override public DictRecord selectByCreateTime(Long createTime) { return dictRecordMapper.selectByCreateTime(createTime); } /** * 新增字典记录 * src/main/java/com/yssh/service/impl/SuYuanServiceImpl.java
@@ -48,9 +48,9 @@ private final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHH"); //@Transactional @Override //@Override @Async("threadPoolTaskExecutor") public void insertSuYuanDatas(List<SuYuan> lists, String time) throws Exception { public void insertSuYuanDatasAsync(List<SuYuan> lists, String time) throws Exception { //插入数据 List<List<SuYuan>> list = Lists.partition(lists, IAsyncService.BATCH_INSERT_NUMBER); CountDownLatch countDownLatch = new CountDownLatch(list.size()); @@ -62,6 +62,16 @@ } @Override public void insertSuYuanDatas(List<SuYuan> lists, String time) { List<List<SuYuan>> subLists = Lists.partition(lists, IAsyncService.BATCH_INSERT_NUMBER); for (List<SuYuan> sub : subLists) { suYuanMapper.batchInsert(TableStrategy.getTableStrategy(time), sub); } logger.info("------ " + time + ".csv," + lists.size() + " 条数据已入库 ------"); } @Override public Integer isTableExists(String tableName) { return suYuanMapper.isTableExists(tableName); } src/main/resources/application-file.yml
@@ -4,5 +4,5 @@ filePath3d: 'D:\2022\dat\correct_jk_47.dat' #csv配置路径 csv: filePath: 'D:\2022\yssh' filePath: 'D:\2022\lbm' vocPath: 'D:\2022\voc_all' src/main/resources/application-scheduled.yml
@@ -1,5 +1,5 @@ csv: cron: '0 1 * * * ? ' voc: '0 41 * * * ? ' cron_max: 192 voc_max: 48 cron: '0 33 * * * ? ' voc: '0 31 * * * ? ' cron_max: 120 voc_max: 384