燕山石化溯源三维电子沙盘-【后端】-服务
13693261870
2023-06-16 a17d95b52d4d2feb4b0af44b24884db8d8a8b067
全域VOC由异步入库改为同步入库,解决超过线程数据后无法入库
已修改4个文件
16 ■■■■ 文件已修改
pom.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/yssh/scheduled/ReadCsvTask.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/yssh/service/VocValsService.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/yssh/utils/VocParser.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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>
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);
            }
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);
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);