diff --git a/src/main/java/com/xujie/sys/modules/reader/controller/GetInformationForExcelController.java b/src/main/java/com/xujie/sys/modules/reader/controller/GetInformationForExcelController.java index 1355a31b..f50ff7e0 100644 --- a/src/main/java/com/xujie/sys/modules/reader/controller/GetInformationForExcelController.java +++ b/src/main/java/com/xujie/sys/modules/reader/controller/GetInformationForExcelController.java @@ -9,8 +9,10 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.io.BufferedReader; +import java.io.File; import java.io.FileReader; import java.io.IOException; +import java.nio.file.Files; import java.util.ArrayList; import java.util.List; @@ -90,6 +92,43 @@ public class GetInformationForExcelController { } catch (IOException e) { e.printStackTrace(); } + // 源文件路径 + String sourcePath = "E:\\file\\cs.tff"; + // 目标文件夹路径 + String destinationFolder = "E:\\info"; + + // 创建源文件对象和目标文件夹对象 + File sourceFile = new File(sourcePath); + File destinationDir = new File(destinationFolder); + + // 确保源文件存在且是文件 + if (sourceFile.exists() && sourceFile.isFile()) { + // 确保目标文件夹存在且是目录 + if (!destinationDir.exists()) { + destinationDir.mkdirs(); // 创建目标文件夹及其父目录 + } + // 构建目标文件路径 + String destinationPath = destinationFolder + File.separator + sourceFile.getName(); + File destinationFile = new File(destinationPath); + + try { + // 复制文件到目标文件夹 + Files.copy(sourceFile.toPath(), destinationFile.toPath()); + System.out.println("文件复制成功!"); + + // 删除源文件 + if (sourceFile.delete()) { + System.out.println("源文件删除成功!"); + } else { + System.out.println("源文件删除失败!"); + } + } catch (IOException e) { + e.printStackTrace(); + System.out.println("文件操作出错:" + e.getMessage()); + } + } else { + System.out.println("源文件不存在或不是文件。"); + } } } diff --git a/src/main/java/com/xujie/sys/modules/reader/service/impl/GetInformationForExcelServiceImpl.java b/src/main/java/com/xujie/sys/modules/reader/service/impl/GetInformationForExcelServiceImpl.java index 6396afb5..ce657857 100644 --- a/src/main/java/com/xujie/sys/modules/reader/service/impl/GetInformationForExcelServiceImpl.java +++ b/src/main/java/com/xujie/sys/modules/reader/service/impl/GetInformationForExcelServiceImpl.java @@ -120,24 +120,31 @@ public class GetInformationForExcelServiceImpl extends ServiceImpl equipmentDataDetails = saveTxt(txtName, excel, batchNo); - // 创建一个固定大小的线程池,这里假设有10个线程 - ExecutorService executor = Executors.newFixedThreadPool(equipmentDataDetails.size()/100); - int startList =0; - int endList=100; - for (int i = startList; i < equipmentDataDetails.size(); i= startList) { - if (endList>equipmentDataDetails.size()){ - endList = equipmentDataDetails.size(); + //如果需要新增的数量小于一百就直接新增,大于一百就做线程池新增 + if (equipmentDataDetails.size()<100){ + //批量新增 + getInformationForExcelMapper.saveByExcels(equipmentDataDetails); + }else { + // 创建一个固定大小的线程池,这里假设有10个线程 + ExecutorService executor = Executors.newFixedThreadPool(equipmentDataDetails.size()/100); + int startList =0; + int endList=100; + + for (int i = startList; i < equipmentDataDetails.size(); i= startList) { + if (endList>equipmentDataDetails.size()){ + endList = equipmentDataDetails.size(); + } + List details = equipmentDataDetails.subList(startList, endList); + startList=startList+endList; + endList=endList+endList; + executor.execute(()->{ + //批量新增 + getInformationForExcelMapper.saveByExcels(details); + }); } - List details = equipmentDataDetails.subList(startList, endList); - startList=startList+endList; - endList=endList+endList; - executor.execute(()->{ - //批量新增 - getInformationForExcelMapper.saveByExcels(details); - }); + // 关闭线程池 + executor.shutdown(); } - // 关闭线程池 - executor.shutdown(); for (String s : txtName) { deleteBypath( s, excel.getBackupFolderPath()); } @@ -164,19 +171,18 @@ public class GetInformationForExcelServiceImpl extends ServiceImpl