From a17d95b52d4d2feb4b0af44b24884db8d8a8b067 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期五, 16 六月 2023 09:32:32 +0800 Subject: [PATCH] 全域VOC由异步入库改为同步入库,解决超过线程数据后无法入库 --- src/main/java/com/yssh/scheduled/ReadCsvTask.java | 2 +- src/main/java/com/yssh/service/VocValsService.java | 9 +++++++++ src/main/java/com/yssh/utils/VocParser.java | 3 ++- pom.xml | 2 +- 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 22271f1..1d0ffd2 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> - <version>2.3.6.RELEASE</version> + <version>2.3.3.RELEASE</version> </parent> <packaging>war</packaging> diff --git a/src/main/java/com/yssh/scheduled/ReadCsvTask.java b/src/main/java/com/yssh/scheduled/ReadCsvTask.java index f58af6b..cd76a01 100644 --- a/src/main/java/com/yssh/scheduled/ReadCsvTask.java +++ b/src/main/java/com/yssh/scheduled/ReadCsvTask.java @@ -91,7 +91,7 @@ Date date = (Date)calendar.getTime().clone(); EasyCsv.read(filePath, VocVals.class, new VocParser(vocValsService, date)).doRead(); - Thread.sleep(5 * 1000); + // Thread.sleep(3 * 1000); } catch (Exception e) { logger.error(e.getMessage(), e); } diff --git a/src/main/java/com/yssh/service/VocValsService.java b/src/main/java/com/yssh/service/VocValsService.java index c5d63c6..e82dfcf 100644 --- a/src/main/java/com/yssh/service/VocValsService.java +++ b/src/main/java/com/yssh/service/VocValsService.java @@ -55,6 +55,15 @@ return vocValsMapper.deleteByTime(time); } + public void insertVocSync(List<VocVals> list) { + List<List<VocVals>> subLists = Lists.partition(list, 100); + for (List<VocVals> sub : subLists) { + vocValsMapper.inserts(sub); + } + + logger.info("------ VOC.csv锛�" + list.size() + " 鏉℃暟鎹凡鍏ュ簱 ------"); + } + @Async("threadPoolTaskExecutor") public void insertVocVals(List<VocVals> list) throws InterruptedException { List<List<VocVals>> lists = Lists.partition(list, IAsyncService.BATCH_INSERT_500); diff --git a/src/main/java/com/yssh/utils/VocParser.java b/src/main/java/com/yssh/utils/VocParser.java index d1722a2..85d9889 100644 --- a/src/main/java/com/yssh/utils/VocParser.java +++ b/src/main/java/com/yssh/utils/VocParser.java @@ -71,7 +71,8 @@ private void inserts() { try { if (list.size() > 0) { - this.vocValsService.insertVocVals(list); + //this.vocValsService.insertVocVals(list); + this.vocValsService.insertVocSync(list); } } catch (Exception e) { logger.error(e.getMessage(), e); -- Gitblit v1.9.3