From 79c420a64f11c07ffcd19e3b263ff6838c0dfc8a Mon Sep 17 00:00:00 2001 From: xiaocp2009 <39615122+xiaocp2009@users.noreply.github.com> Date: Tue, 26 Aug 2025 16:40:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=AF=BC=E5=85=A5=E6=95=88?= =?UTF-8?q?=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cds-fontend-2025.V1/readme.txt | 28 +++++++++++++++- .../src/main/resources/application.yml | 6 ++-- .../src/main/resources/vm/java/mapper.java.vm | 5 +++ .../resources/vm/java/serviceImpl.java.vm | 25 ++++++++++++++- .../src/main/resources/vm/xml/mapper.xml.vm | 17 ++++++++++ .../OriginalMobileBankSignupMapper.java | 4 +++ .../OriginalMobileBankSignupServiceImpl.java | 19 +++++++++-- .../OriginalMobileBankSignupMapper.xml | 32 +++++++++++++++++++ 8 files changed, 130 insertions(+), 6 deletions(-) diff --git a/cds-fontend-2025.V1/readme.txt b/cds-fontend-2025.V1/readme.txt index 535cf27..5f2bac8 100644 --- a/cds-fontend-2025.V1/readme.txt +++ b/cds-fontend-2025.V1/readme.txt @@ -31,4 +31,30 @@ pnpm dev 5. 构建生产版本 ```bash -pnpm build \ No newline at end of file +pnpm build + + +部署tongweb + +1、cd dist + +2、mkdir WEB-INF + +3、touch web.xml + + + + Router for Tomcat + + 404 + /index.html + + + + +4、jar -cvf mps-vue.war * +5、将war复制到tongweb安装目录 \ No newline at end of file diff --git a/cds-platform-2025.V1/ruoyi-admin/src/main/resources/application.yml b/cds-platform-2025.V1/ruoyi-admin/src/main/resources/application.yml index df33dbd..746bbbf 100644 --- a/cds-platform-2025.V1/ruoyi-admin/src/main/resources/application.yml +++ b/cds-platform-2025.V1/ruoyi-admin/src/main/resources/application.yml @@ -77,9 +77,11 @@ spring: servlet: multipart: # 单个文件大小 - max-file-size: 10MB + max-file-size: 50MB # 设置总上传的文件大小 - max-request-size: 20MB + max-request-size: 100MB + #指定上传文件的临时目录,必须带,否则tongweb会报错 + location: /data/upload_tmp mvc: # 设置静态资源路径 防止所有请求都去查静态资源 static-path-pattern: /static/** diff --git a/cds-platform-2025.V1/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/mapper.java.vm b/cds-platform-2025.V1/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/mapper.java.vm index 808f6bc..1f4f7fd 100644 --- a/cds-platform-2025.V1/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/mapper.java.vm +++ b/cds-platform-2025.V1/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/mapper.java.vm @@ -10,6 +10,8 @@ import org.apache.ibatis.annotations.Param; import org.dromara.common.mybatis.annotation.DataColumn; import org.dromara.common.mybatis.annotation.DataPermission; +import java.util.Collection; + /** * ${functionName}Mapper接口 * @@ -33,4 +35,7 @@ public interface ${ClassName}Mapper extends BaseMapperPlus<${ClassName}, ${Class //}) // List select${ClassName}ExportList(@Param(Constants.WRAPPER) Wrapper<${ClassName}> queryWrapper); + // 批量插入 + void batchInsert(@Param("list") Collection<${ClassName}> list); + } diff --git a/cds-platform-2025.V1/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm b/cds-platform-2025.V1/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm index d0c6d84..6856ac9 100644 --- a/cds-platform-2025.V1/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm +++ b/cds-platform-2025.V1/ruoyi-modules/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm @@ -50,7 +50,30 @@ public class ${ClassName}ServiceImpl implements I${ClassName}Service { if (isUpdateSupport) { baseMapper.insertOrUpdateBatch(list); } else { - baseMapper.insertBatch(list); + //baseMapper.insertBatch(list); + + /** + * 多笔写入方式有循环写入、开启数据库batch模式、sql拼接后多笔入库以及mapper foreach多笔写入模式 + * 经对比验证,foreach方式效率最高 + * + * **/ + + //由于mybatis的批量方法为伪批量,以下优化为真批量 + //SqlHelper与service的注解事务管理冲突,所以此处自行写分批 + int batchSize = 1000;//每批1000条 + List<${ClassName}> batchList = new ArrayList<>(batchSize); + for (${ClassName} item : list) { + batchList.add(item); + if (batchList.size() == batchSize) { + baseMapper.batchInsert(batchList); + batchList.clear(); + } + } + + // 处理最后一批不满batchSize的数据 + if (!batchList.isEmpty()) { + baseMapper.batchInsert(batchList); + } } } diff --git a/cds-platform-2025.V1/ruoyi-modules/ruoyi-generator/src/main/resources/vm/xml/mapper.xml.vm b/cds-platform-2025.V1/ruoyi-modules/ruoyi-generator/src/main/resources/vm/xml/mapper.xml.vm index 9fb48d9..62d70fa 100644 --- a/cds-platform-2025.V1/ruoyi-modules/ruoyi-generator/src/main/resources/vm/xml/mapper.xml.vm +++ b/cds-platform-2025.V1/ruoyi-modules/ruoyi-generator/src/main/resources/vm/xml/mapper.xml.vm @@ -4,4 +4,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + + + INSERT INTO ${tableName} + ( + #foreach($column in $columns) + $column.columnName#if($foreach.count != $columns.size()),#end + #end + ) + VALUES + + ( + #foreach($column in $columns) + #{item.$column.javaField}#if($foreach.count != $columns.size()),#end + #end + ) + + diff --git a/cds-platform-2025.V1/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/original/mapper/OriginalMobileBankSignupMapper.java b/cds-platform-2025.V1/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/original/mapper/OriginalMobileBankSignupMapper.java index d48e1fa..a164d01 100644 --- a/cds-platform-2025.V1/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/original/mapper/OriginalMobileBankSignupMapper.java +++ b/cds-platform-2025.V1/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/original/mapper/OriginalMobileBankSignupMapper.java @@ -10,6 +10,8 @@ import org.apache.ibatis.annotations.Param; import org.dromara.common.mybatis.annotation.DataColumn; import org.dromara.common.mybatis.annotation.DataPermission; +import java.util.Collection; + /** * 个人手机银行签约明细Mapper接口 * @@ -33,4 +35,6 @@ public interface OriginalMobileBankSignupMapper extends BaseMapperPlus selectOriginalMobileBankSignupExportList(@Param(Constants.WRAPPER) Wrapper queryWrapper); + // 批量插入(MySQL多值语法) + void batchInsert(@Param("list") Collection list); } diff --git a/cds-platform-2025.V1/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/original/service/impl/OriginalMobileBankSignupServiceImpl.java b/cds-platform-2025.V1/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/original/service/impl/OriginalMobileBankSignupServiceImpl.java index b695d7e..84489d3 100644 --- a/cds-platform-2025.V1/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/original/service/impl/OriginalMobileBankSignupServiceImpl.java +++ b/cds-platform-2025.V1/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/original/service/impl/OriginalMobileBankSignupServiceImpl.java @@ -3,7 +3,6 @@ package org.dromara.original.service.impl; import cn.hutool.core.collection.CollUtil; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; -import org.dromara.common.core.exception.ServiceException; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.PageQuery; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -20,6 +19,7 @@ import org.dromara.original.service.IOriginalMobileBankSignupService; import org.springframework.transaction.annotation.Transactional; import java.util.*; +import java.util.stream.Collectors; /** * 个人手机银行签约明细Service业务层处理 @@ -48,7 +48,22 @@ public class OriginalMobileBankSignupServiceImpl implements IOriginalMobileBankS if (isUpdateSupport) { baseMapper.insertOrUpdateBatch(list); } else { - baseMapper.insertBatch(list); + //由于mybatis的批量方法为伪批量,以下优化为真批量 + //SqlHelper与service的注解事务管理冲突,所以此处自行写分批 + int batchSize = 1000;//每批1000条 + List batchList = new ArrayList<>(batchSize); + for (OriginalMobileBankSignup item : list) { + batchList.add(item); + if (batchList.size() == batchSize) { + baseMapper.batchInsert(batchList); + batchList.clear(); + } + } + + // 处理最后一批不满batchSize的数据 + if (!batchList.isEmpty()) { + baseMapper.batchInsert(batchList); + } } } diff --git a/cds-platform-2025.V1/ruoyi-modules/ruoyi-system/src/main/resources/mapper/original/OriginalMobileBankSignupMapper.xml b/cds-platform-2025.V1/ruoyi-modules/ruoyi-system/src/main/resources/mapper/original/OriginalMobileBankSignupMapper.xml index f72e5dd..efe6941 100644 --- a/cds-platform-2025.V1/ruoyi-modules/ruoyi-system/src/main/resources/mapper/original/OriginalMobileBankSignupMapper.xml +++ b/cds-platform-2025.V1/ruoyi-modules/ruoyi-system/src/main/resources/mapper/original/OriginalMobileBankSignupMapper.xml @@ -4,4 +4,36 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + + + INSERT INTO original_mobile_bank_signup + ( + branch_name, + branch_code, + customer_name, + id_type, + id_number, + main_account, + signup_date, + auth_method, + serial_number, + teller + ) + VALUES + + ( + #{item.branchName}, + #{item.branchCode}, + #{item.customerName}, + #{item.idType}, + #{item.idNumber}, + #{item.mainAccount}, + #{item.signupDate}, + #{item.authMethod}, + #{item.serialNumber}, + #{item.teller} + ) + + +