当前位置: 首页 > news >正文

企业网站建设规划现代简约设计风格说明

企业网站建设规划,现代简约设计风格说明,怎么用自己的网站做网页,ppt汇报模板免费目录 1.源码下载 2、先上结论 3、代码 3.1、实体、接口 3.2、读CSV 3.3、读Excel 3.4、写CSV 3.5、写Excel 3.6、业务示例 1.源码下载 示例源码下载#xff08;含模板#xff09; 2、先上结论 注意注意#xff1a;#xff1a;#xff1a;#xff1a;导出大…目录 1.源码下载  2、先上结论 3、代码 3.1、实体、接口 3.2、读CSV 3.3、读Excel 3.4、写CSV 3.5、写Excel 3.6、业务示例 1.源码下载  示例源码下载含模板 2、先上结论 注意注意导出大文件的时候可能会有临时存储 我的是在C:\Users\xbx\AppData\Local\Temp\poifiles读csv文件 行数1048575 hutool 5205 esayPoi 3929 easyExcel1 1917 easyExcel2 2832读excel文件 行数1048575 hutool 58207 esayPoi 25513 easyExce1 10646 easyExcel2 10123写csv文件 行数1048575 hutool 6136 esayPoi 828 easyExcel1 6943 easyExcel2 5212写excel文件 行数1048575 hutool1 146655 hutool2 23570 esayPoi1 21805 esayPoi2 93034 easyExcel120762 easyExcel220523 easyExcel315386 easyExcel414586 3、代码 3.1、实体、接口 package cn.sdjtky.ltpon.FileTest;import cn.afterturn.easypoi.excel.annotation.Excel; import lombok.Data;/*** version v1.0* ProjectName: ltpon* ClassName: Strainentey* Description:* Author: xbx* Date: 2023/12/8 13:55*/ Data public class DeviceDto {//snchannelString sn;//与地表距离mDouble surfaceDistance;//结构层位String structuralLayer;//就写电信号String channel;//这个值就是StressStrainDataDto里面的key 如t.v1,t.v2String dataKey; }package cn.sdjtky.ltpon.FileTest;import cn.hutool.core.annotation.Alias; import lombok.Data;/*** version v1.0* ProjectName: ltpon* ClassName: Strainentey* Description:* Author: xbx* Date: 2023/12/8 13:55*/ Data public class StrainEntity {Alias(时间)String time;Alias(通道1)String v1;Alias(通道2)String v2;Alias(通道3)String v3;Alias(通道4)String v4;Double v5;Double v6;Double v7;Double v8; }package cn.sdjtky.ltpon.FileTest;import cn.afterturn.easypoi.excel.annotation.Excel; import lombok.Data;/*** version v1.0* ProjectName: ltpon* ClassName: Strainentey* Description:* Author: xbx* Date: 2023/12/8 13:55*/ Data public class StrainEntity2 {Excel(name 时间)String time;Excel(name 通道1)String v1;Excel(name 通道2)String v2;Excel(name 通道3)String v3;Excel(name 通道4)String v4;Double v5;Double v6;Double v7;Double v8; }package cn.sdjtky.ltpon.FileTest;import com.alibaba.excel.annotation.ExcelProperty; import lombok.Data;/*** version v1.0* ProjectName: ltpon* ClassName: Strainentey* Description:* Author: xbx* Date: 2023/12/8 13:55*/ Data public class StrainEntity3 {ExcelProperty(时间)String time;ExcelProperty(通道1)String v1;ExcelProperty(通道2)String v2;ExcelProperty(通道3)String v3;ExcelProperty(通道4)String v4;Double v5;Double v6;Double v7;Double v8; }package cn.sdjtky.ltpon.FileTest;import cn.afterturn.easypoi.excel.annotation.Excel; import lombok.Data;import java.util.Date;/*** version v1.0* ProjectName: ltpon* ClassName: Strainentey* Description:* Author: xbx* Date: 2023/12/8 13:55*/ Data public class StressStrainDataDto { // 年/月/日String date; // 时/分/秒/毫秒String time; // 时/分/秒/毫秒String dateTime;Double v1;Double v2;Double v3;Double v4;Double v5;Double v6;Double v7;Double v8;Double v9;Double v10;Double v11;Double v12;Double v13; }package cn.sdjtky.ltpon.FileTest;import cn.sdjtky.ltpon.FileTest.StrainEntity3; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.read.listener.ReadListener; import com.alibaba.excel.util.ListUtils; import com.alibaba.fastjson2.JSON; import org.apache.poi.ss.formula.functions.T;import java.util.ArrayList; import java.util.List;// 有个很重要的点 DemoDataListener 不能被spring管理要每次读取excel都要new,然后里面用到spring可以构造方法传进去 public class Strain3ReadListenerT implements ReadListenerT {/*** 每隔5条存储数据库实际使用中可以100条然后清理list 方便内存回收*//*** 缓存的数据*/private ListT cachedDataList new ArrayListT();/*** 这个每一条数据解析都会来调用** param data one row value. Is is same as {link AnalysisContext#readRowHolder()}* param context*/Overridepublic void invoke(T data, AnalysisContext context) {cachedDataList.add(data); // // 达到BATCH_COUNT了需要去存储一次数据库防止数据几万条数据在内存容易OOM // if (cachedDataList.size() BATCH_COUNT) { // // 存储完成清理 list // cachedDataList ListUtils.newArrayListWithExpectedSize(BATCH_COUNT); // }}/*** 所有数据解析完成了 都会来调用** param context*/Overridepublic void doAfterAllAnalysed(AnalysisContext context) {// 这里也要保存数据确保最后遗留的数据也存储到数据库}public ListT getCachedDataList() {return cachedDataList;} } 3.2、读CSV package cn.sdjtky.ltpon.FileTest;import cn.afterturn.easypoi.csv.CsvImportUtil; import cn.afterturn.easypoi.csv.entity.CsvImportParams; import cn.afterturn.easypoi.excel.entity.ImportParams; import cn.hutool.core.io.resource.ResourceUtil; import cn.hutool.core.text.csv.CsvReader; import cn.hutool.core.text.csv.CsvUtil; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; import com.alibaba.excel.support.ExcelTypeEnum; import org.junit.jupiter.api.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory;import java.io.File; import java.io.FileInputStream; import java.util.ArrayList; import java.util.List;public class ReadCsvTest {private static final Logger LOGGER LoggerFactory.getLogger(ReadCsvTest.class);Testpublic void test() {String filePath G:/test/1048575.csv;hutool(filePath); // esayPoi(filePath); // easyExcel1(filePath); // easyExcel2(filePath);}public void hutool(String filePath) {try {long start System.currentTimeMillis();CsvReader reader CsvUtil.getReader();ListStrainEntity result reader.read(ResourceUtil.getUtf8Reader(filePath), StrainEntity.class);long end System.currentTimeMillis();System.out.println(hutool (end-start));System.out.println(行数result.size());} catch (Exception e) {e.printStackTrace();}}public void esayPoi(String filePath) {try {CsvImportParams params new CsvImportParams(CsvImportParams.UTF8);long start System.currentTimeMillis();ListStrainEntity2 result CsvImportUtil.importCsv(new FileInputStream(new File(filePath)),StrainEntity2.class,params);long end System.currentTimeMillis();System.out.println(esayPoi (end-start));System.out.println(行数result.size());} catch (Exception e) {e.printStackTrace();}}public void easyExcel1(String filePath) {try {ImportParams params new ImportParams();ListStrainEntity3 result new ArrayListStrainEntity3();long start System.currentTimeMillis();EasyExcel.read(filePath, StrainEntity3.class, new AnalysisEventListenerStrainEntity3() {Overridepublic void invoke(StrainEntity3 reportExcel, AnalysisContext analysisContext) {// 将读取到的每一行存入reportDetails集合中result.add(reportExcel);}Overridepublic void doAfterAllAnalysed(AnalysisContext analysisContext) {}}).excelType(ExcelTypeEnum.CSV).sheet().doRead();long end System.currentTimeMillis();System.out.println(easyExcel1 (end-start));System.out.println(行数result.size());} catch (Exception e) {e.printStackTrace();}}public void easyExcel2(String filePath) {final Strain3ReadListenerStrainEntity3 strain3ReadListener new Strain3ReadListenerStrainEntity3() ;try {long start System.currentTimeMillis();EasyExcel.read(filePath, StrainEntity3.class, strain3ReadListener).sheet().doRead(); // EasyExcel.read(filePath) // .excelType(ExcelTypeEnum.CSV) // .registerReadListener(strain3ReadListener) // .sheet() // .doRead();ListStrainEntity3 result strain3ReadListener.getCachedDataList();long end System.currentTimeMillis();System.out.println(easyExcel2 (end-start));System.out.println(行数result.size());} catch (Exception e) {e.printStackTrace();}}}3.3、读Excel package cn.sdjtky.ltpon.FileTest;import cn.afterturn.easypoi.excel.ExcelImportUtil; import cn.afterturn.easypoi.excel.entity.ImportParams; import cn.afterturn.easypoi.handler.inter.IReadHandler; import cn.hutool.poi.excel.ExcelReader; import cn.hutool.poi.excel.ExcelUtil; import cn.sdjtky.ltpon.easy.excel.listener.MergeCellsReadListener; import cn.sdjtky.ltpon.poi.DemoDataListener; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.enums.CellExtraTypeEnum; import com.alibaba.excel.event.AnalysisEventListener; import com.alibaba.excel.read.listener.PageReadListener; import com.alibaba.excel.support.ExcelTypeEnum; import com.alibaba.fastjson2.JSON; import org.junit.jupiter.api.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory;import java.io.File; import java.io.FileInputStream; import java.util.ArrayList; import java.util.List;public class ReadExcelTest {private static final Logger LOGGER LoggerFactory.getLogger(ReadExcelTest.class);Testpublic void test() {String filePath G:/test/1048575.xlsx;hutool(filePath); // esayPoi(filePath); // easyExcel1(filePath); // easyExcel2(filePath);}public void hutool(String filePath) {try {long start System.currentTimeMillis();ExcelReader reader ExcelUtil.getReader(filePath);ListStrainEntity result reader.readAll(StrainEntity.class);long end System.currentTimeMillis();System.out.println(hutool (end-start));System.out.println(行数result.size());} catch (Exception e) {e.printStackTrace();}}public void esayPoi(String filePath) {try {ImportParams params new ImportParams();ListStrainEntity2 result new ArrayListStrainEntity2();long start System.currentTimeMillis();ExcelImportUtil.importExcelBySax(new FileInputStream(new File(filePath)),StrainEntity2.class,params,new IReadHandlerStrainEntity2() {Overridepublic void handler(StrainEntity2 o) {result.add(o);}Overridepublic void doAfterAll() {System.out.println(全部执行完毕了--------------------------------);}});long end System.currentTimeMillis();System.out.println(esayPoi (end-start));System.out.println(行数result.size());} catch (Exception e) {e.printStackTrace();}}public void easyExcel1(String filePath) {try {ImportParams params new ImportParams();ListStrainEntity3 result new ArrayListStrainEntity3();long start System.currentTimeMillis();EasyExcel.read(filePath, StrainEntity3.class, new AnalysisEventListenerStrainEntity3() {Overridepublic void invoke(StrainEntity3 reportExcel, AnalysisContext analysisContext) {// 将读取到的每一行存入reportDetails集合中result.add(reportExcel);}Overridepublic void doAfterAllAnalysed(AnalysisContext analysisContext) {}}).sheet().doRead();long end System.currentTimeMillis();System.out.println(easyExcel1 (end-start));System.out.println(行数result.size());} catch (Exception e) {e.printStackTrace();}}public void easyExcel2(String filePath) {final Strain3ReadListenerStrainEntity3 strain3ReadListener new Strain3ReadListenerStrainEntity3() ;try {long start System.currentTimeMillis();EasyExcel.read(filePath, StrainEntity3.class, strain3ReadListener).sheet().doRead(); // EasyExcel.read(filePath) // .registerReadListener(strain3ReadListener) // .sheet() // .doRead();ListStrainEntity3 result strain3ReadListener.getCachedDataList();long end System.currentTimeMillis();System.out.println(easyExcel2 (end-start));System.out.println(行数result.size());} catch (Exception e) {e.printStackTrace();}}}3.4、写CSV package cn.sdjtky.ltpon.FileTest;import cn.afterturn.easypoi.csv.CsvExportUtil; import cn.afterturn.easypoi.csv.CsvImportUtil; import cn.afterturn.easypoi.csv.entity.CsvExportParams; import cn.afterturn.easypoi.csv.entity.CsvImportParams; import cn.afterturn.easypoi.excel.entity.ImportParams; import cn.hutool.core.io.FastByteArrayOutputStream; import cn.hutool.core.io.resource.ResourceUtil; import cn.hutool.core.text.csv.CsvReader; import cn.hutool.core.text.csv.CsvUtil; import cn.hutool.core.text.csv.CsvWriter; import cn.hutool.core.util.CharsetUtil; import cn.sdjtky.ltpon.query.HumidityQuery; import cn.sdjtky.ltpon.utils.BeanCopierUtils; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; import com.alibaba.excel.support.ExcelTypeEnum; import com.alibaba.excel.write.metadata.WriteSheet; import com.ruoyi.common.utils.uuid.IdUtils; import org.junit.jupiter.api.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils;import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.util.ArrayList; import java.util.List;public class WriteCsvTest {private static final Logger LOGGER LoggerFactory.getLogger(WriteCsvTest.class);Testpublic void test() {String filePath G:/test/1048575.csv;ListStrainEntity3 strainEntity3List Rerad_easyExcel1(filePath);ListStrainEntity strainEntityList BeanCopierUtils.list(strainEntity3List, StrainEntity::new);ListStrainEntity2 strainEntity2List BeanCopierUtils.list(strainEntity3List, StrainEntity2::new); // ListStrainEntity3 strainEntity3List BeanCopierUtils.list(strainEntity3List, StrainEntity3::new); // hutool(strainEntityList); // esayPoi(strainEntity2List); // easyExcel1(strainEntity3List);easyExcel2(strainEntity3List);}public ListStrainEntity3 Rerad_easyExcel1(String filePath) {ListStrainEntity3 result new ArrayListStrainEntity3();try {ImportParams params new ImportParams();EasyExcel.read(filePath, StrainEntity3.class, new AnalysisEventListenerStrainEntity3() {Overridepublic void invoke(StrainEntity3 reportExcel, AnalysisContext analysisContext) {// 将读取到的每一行存入reportDetails集合中result.add(reportExcel);}Overridepublic void doAfterAllAnalysed(AnalysisContext analysisContext) {}}).excelType(ExcelTypeEnum.CSV).sheet().doRead();} catch (Exception e) {e.printStackTrace();}return result;}public void hutool(ListStrainEntity list) {System.out.println(数据行数list.size());try {long start System.currentTimeMillis();CsvWriter writer CsvUtil.getWriter(G:/test/write/hutool.csv, CharsetUtil.CHARSET_UTF_8); // writer.write(list);writer.writeBeans(list);long end System.currentTimeMillis();long cost end-start;System.out.println(hutool cost);} catch (Exception e) {e.printStackTrace();}}public void esayPoi(ListStrainEntity2 list) {System.out.println(数据行数list.size());try {long start System.currentTimeMillis();CsvExportParams params new CsvExportParams(CsvImportParams.UTF8);FileOutputStream fos new FileOutputStream(G:/test/write/esayPoi.csv);CsvExportUtil.exportCsv(params, StrainEntity2.class, list, fos);fos.flush();fos.close();long end System.currentTimeMillis();long cost end-start;System.out.println(esayPoi cost);} catch (Exception e) {e.printStackTrace();}}public void easyExcel1(ListStrainEntity3 list) {System.out.println(数据行数list.size());try {long start System.currentTimeMillis();FastByteArrayOutputStream fastByteArrayOutputStream new FastByteArrayOutputStream();try {EasyExcel.write(fastByteArrayOutputStream, StrainEntity3.class).autoCloseStream(false).excelType(ExcelTypeEnum.CSV).sheet(sheet页).doWrite(list);FileOutputStream fileOutputStream new FileOutputStream(G:/test/write/easyExcel.csv);fastByteArrayOutputStream.writeTo(fileOutputStream);fileOutputStream.flush();fileOutputStream.close();} finally {}long end System.currentTimeMillis();long cost end-start;System.out.println(easyExcel1 cost);} catch (Exception e) {e.printStackTrace();}}public void easyExcel2(ListStrainEntity3 list) {System.out.println(数据行数list.size());try {long start System.currentTimeMillis();try {EasyExcel.write(G:/test/write/easyExcel.csv, StrainEntity3.class).excelType(ExcelTypeEnum.CSV).sheet(sss).doWrite(list);} finally {}long end System.currentTimeMillis();long cost end-start;System.out.println(easyExcel2 cost);} catch (Exception e) {e.printStackTrace();}}}3.5、写Excel package cn.sdjtky.ltpon.FileTest;import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.ExcelImportUtil; import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.afterturn.easypoi.excel.entity.ImportParams; import cn.afterturn.easypoi.excel.entity.TemplateExportParams; import cn.afterturn.easypoi.handler.inter.IExcelExportServer; import cn.afterturn.easypoi.handler.inter.IReadHandler; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.io.FastByteArrayOutputStream; import cn.hutool.core.text.csv.CsvUtil; import cn.hutool.core.text.csv.CsvWriter; import cn.hutool.core.util.CharsetUtil; import cn.hutool.poi.excel.BigExcelWriter; import cn.hutool.poi.excel.ExcelReader; import cn.hutool.poi.excel.ExcelUtil; import cn.hutool.poi.excel.ExcelWriter; import cn.sdjtky.ltpon.utils.BeanCopierUtils; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; import com.alibaba.excel.support.ExcelTypeEnum; import com.alibaba.excel.write.metadata.WriteSheet; import com.alibaba.excel.write.metadata.fill.FillWrapper; import com.ruoyi.common.utils.uuid.IdUtils; import lombok.SneakyThrows; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.junit.jupiter.api.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory;import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;public class WriteExcelTest {private static final Logger LOGGER LoggerFactory.getLogger(WriteExcelTest.class);Testpublic void test() {String filePath G:/test/1048575.csv;ListStrainEntity3 strainEntity3List Rerad_easyExcel1(filePath);ListStrainEntity strainEntityList BeanCopierUtils.list(strainEntity3List, StrainEntity::new);ListStrainEntity2 strainEntity2List BeanCopierUtils.list(strainEntity3List, StrainEntity2::new); // hutool1(strainEntityList); // hutool2(strainEntityList); // esayPoi1(strainEntity2List); // esayPoi2(strainEntity2List); // easyExcel1(strainEntity3List); // easyExcel2(strainEntity3List); // easyExcel3(strainEntity3List);easyExcel4(strainEntity3List);}public ListStrainEntity3 Rerad_easyExcel1(String filePath) {ListStrainEntity3 result new ArrayListStrainEntity3();try {ImportParams params new ImportParams();EasyExcel.read(filePath, StrainEntity3.class, new AnalysisEventListenerStrainEntity3() {Overridepublic void invoke(StrainEntity3 reportExcel, AnalysisContext analysisContext) {// 将读取到的每一行存入reportDetails集合中result.add(reportExcel);}Overridepublic void doAfterAllAnalysed(AnalysisContext analysisContext) {}}).excelType(ExcelTypeEnum.CSV).sheet().doRead();} catch (Exception e) {e.printStackTrace();}return result;}public void hutool1(ListStrainEntity list) {System.out.println(数据行数list.size());try {long start System.currentTimeMillis();ExcelWriter writer ExcelUtil.getWriter(G:/test/write/hutool.xlsx);writer.write(list, true);// 关闭writer释放内存writer.close();long end System.currentTimeMillis();long cost end-start;System.out.println(hutool cost);} catch (Exception e) {e.printStackTrace();}}public void hutool2(ListStrainEntity list) {System.out.println(数据行数list.size());try {long start System.currentTimeMillis();BigExcelWriter writer ExcelUtil.getBigWriter(G:/test/write/hutool2 IdUtils.getSequenceID().xlsx);writer.write(list);writer.close();long end System.currentTimeMillis();long cost end-start;System.out.println(hutool2 cost);} catch (Exception e) {e.printStackTrace();}}public void esayPoi1(ListStrainEntity2 list) {System.out.println(数据行数list.size());try {long start System.currentTimeMillis();ExportParams params new ExportParams();params.setMaxNum(1048576);Workbook workbook null;workbook ExcelExportUtil.exportBigExcel(params, StrainEntity2.class, new IExcelExportServer() {Overridepublic ListObject selectListForExcelExport(Object obj, int page) {if (list.size()0){return null;}ListObject listObj new ArrayListObject();listObj.addAll(list);list.clear();return listObj;}}, 1);// workbook ExcelExportUtil.exportExcel(params,StrainEntity2.class,list);FileOutputStream fos new FileOutputStream(G:/test/write/esayPoi.xlsx);workbook.write(fos);fos.close();long end System.currentTimeMillis();long cost end-start;System.out.println(esayPoi cost);} catch (Exception e) {e.printStackTrace();}}public void esayPoi2(ListStrainEntity2 list) {System.out.println(数据行数list.size());try {long start System.currentTimeMillis();MapString, Object map new HashMapString, Object();map.put(list, list);TemplateExportParams params new TemplateExportParams(G:/test/t/StrainEntity2.xlsx);Workbook workbook ExcelExportUtil.exportExcel(params, map);FileOutputStream fos new FileOutputStream(G:/test/write/esayPoi2.xlsx);workbook.write(fos);fos.close();long end System.currentTimeMillis();long cost end-start;System.out.println(esayPoi2 cost);} catch (Exception e) {e.printStackTrace();}}public void easyExcel1(ListStrainEntity3 list) {System.out.println(数据行数list.size());try {long start System.currentTimeMillis();FastByteArrayOutputStream fastByteArrayOutputStream new FastByteArrayOutputStream();try {EasyExcel.write(fastByteArrayOutputStream, StrainEntity3.class).autoCloseStream(false).excelType(ExcelTypeEnum.XLSX).sheet(sheet页).doWrite(list);FileOutputStream fileOutputStream new FileOutputStream(G:/test/write/easyExcel.xlsx);fastByteArrayOutputStream.writeTo(fileOutputStream);fileOutputStream.flush();fileOutputStream.close();} finally {}long end System.currentTimeMillis();long cost end-start;System.out.println(easyExcel1 cost);} catch (Exception e) {e.printStackTrace();}}public void easyExcel2(ListStrainEntity3 list) {System.out.println(数据行数list.size());try {long start System.currentTimeMillis();try {EasyExcel.write(G:/test/write/easyExcel.xlsx, StrainEntity3.class).excelType(ExcelTypeEnum.XLSX).sheet(sss).doWrite(list);} finally {}long end System.currentTimeMillis();long cost end-start;System.out.println(easyExcel2 cost);} catch (Exception e) {e.printStackTrace();}}public void easyExcel3(ListStrainEntity3 list) {System.out.println(数据行数list.size());try {long start System.currentTimeMillis();String templateFileName G:/test/t/StrainEntity3.xlsx;String fileName G:/test/write/easyExcel.xlsx;// 方案1 一下子全部放到内存里面 并填充// 这里 会填充到第一个sheet 然后文件流会自动关闭EasyExcel.write(fileName).withTemplate(templateFileName).sheet().doFill(list);long end System.currentTimeMillis();long cost end-start;System.out.println(easyExcel3 cost);} catch (Exception e) {e.printStackTrace();}}public void easyExcel4(ListStrainEntity3 list) {System.out.println(数据行数list.size());try {long start System.currentTimeMillis();FastByteArrayOutputStream fastByteArrayOutputStream new FastByteArrayOutputStream();// 方案2 分多次 填充 会使用文件缓存省内存String templateFileName G:/test/t/StrainEntity3.xlsx;String fileName G:/test/write/easyExcel.xlsx;try (com.alibaba.excel.ExcelWriter excelWriter EasyExcel.write(fastByteArrayOutputStream).withTemplate(templateFileName).build()) {WriteSheet writeSheet EasyExcel.writerSheet().build();excelWriter.fill(list, writeSheet);}// String templateFileName G:/test/t/StrainEntity3.1.xlsx; // String fileName G:/test/write/easyExcel.xlsx; // try (com.alibaba.excel.ExcelWriter excelWriter EasyExcel.write(fileName).withTemplate(templateFileName).build()) { // WriteSheet writeSheet EasyExcel.writerSheet().build(); // excelWriter.fill(new FillWrapper(sl, list), writeSheet); // }// String templateFileName G:/test/t/StrainEntity3.1.xlsx; // String fileName G:/test/write/easyExcel.xlsx; // try (com.alibaba.excel.ExcelWriter excelWriter EasyExcel.write(fileName).withTemplate(templateFileName).build()) { // WriteSheet writeSheet EasyExcel.writerSheet().build(); // excelWriter.fill(new FillWrapper(sl, listX), writeSheet); // excelWriter.fill(new FillWrapper(sl, listX), writeSheet); // excelWriter.fill(new FillWrapper(sl, listX), writeSheet); // excelWriter.fill(new FillWrapper(sl, listX), writeSheet); // excelWriter.fill(new FillWrapper(sl, listX), writeSheet); // }long end System.currentTimeMillis();long cost end-start;System.out.println(easyExcel4 cost);} catch (Exception e) {e.printStackTrace();}} }3.6、业务示例 package cn.sdjtky.ltpon.FileTest;import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.afterturn.easypoi.excel.entity.ImportParams; import cn.afterturn.easypoi.excel.entity.TemplateExportParams; import cn.afterturn.easypoi.handler.inter.IExcelExportServer; import cn.hutool.core.io.FastByteArrayOutputStream; import cn.hutool.poi.excel.BigExcelWriter; import cn.hutool.poi.excel.ExcelUtil; import cn.hutool.poi.excel.ExcelWriter; import cn.sdjtky.ltpon.utils.BeanCopierUtils; import cn.sdjtky.ltpon.utils.LocalDateTimeUtils; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.enums.WriteDirectionEnum; import com.alibaba.excel.event.AnalysisEventListener; import com.alibaba.excel.support.ExcelTypeEnum; import com.alibaba.excel.write.metadata.WriteSheet; import com.alibaba.excel.write.metadata.fill.FillConfig; import com.alibaba.excel.write.metadata.fill.FillWrapper; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.uuid.IdUtils; import org.apache.poi.ss.usermodel.Workbook; import org.junit.jupiter.api.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.core.io.DefaultResourceLoader; import org.springframework.core.io.Resource;import java.io.ByteArrayOutputStream; import java.io.FileOutputStream; import java.time.LocalDateTime; import java.util.*;public class StressStrainTest {private static final Logger LOGGER LoggerFactory.getLogger(StressStrainTest.class);private static final String stationName 临沂G205观测点;private static final String pileNumber K103--K113;private static final String observer 徐本锡;private static final String observationDate LocalDateTimeUtils.format(LocalDateTimeUtils.DEFAULT_PATTERN,LocalDateTime.now());private static final String reviewer 金小少;private static final String reviewDate LocalDateTimeUtils.format(LocalDateTimeUtils.DEFAULT_PATTERN,LocalDateTime.now());Testpublic void test() { // esayPoi2();easyExcel4(); // easyExcelCSV2();}public MapString, Object getData(){MapString, Object map new HashMapString, Object();ListDeviceDto deviceList new ArrayListDeviceDto();for (int i1; i8; i){DeviceDto deviceDto new DeviceDto();deviceDto.setSn(传感器x_i);deviceDto.setSurfaceDistance(Double.valueOf(i));deviceDto.setStructuralLayer(层位i);deviceDto.setChannel(电信号);deviceDto.setDataKey(t.vi);deviceList.add(deviceDto);}ListMapString, Object dataList new ArrayListMapString, Object();ListStressStrainDataDto dataList2 new ArrayListStressStrainDataDto();for(int i0; i100; i){MapString, Object m new HashMapString, Object();StressStrainDataDto dto new StressStrainDataDto();for (int j1; j8; j){m.put(date, DateUtils.datePath());m.put(time, DateUtils.dateTimeNow(DateUtils.HHMMssSSS_1));m.put(vj, Math.random()1);dto.setDate(DateUtils.datePath());dto.setTime(DateUtils.dateTimeNow(DateUtils.HHMMssSSS_1));dto.setDateTime(DateUtils.dateTimeNow(DateUtils.YYYYMMDDHHMMssSSS_1));dto.setV1( Math.random()1);dto.setV2( Math.random()1);dto.setV3( Math.random()1);dto.setV4( Math.random()1);dto.setV5( Math.random()1);dto.setV6( Math.random()1);dto.setV7( Math.random()1);dto.setV8( Math.random()1);}dataList.add(m);dataList2.add(dto);}map.put(stationName, stationName);map.put(pileNumber, pileNumber);map.put(observer, observer);map.put(observationDate, observationDate);map.put(reviewer, reviewer);map.put(reviewDate, reviewDate);map.put(deviceList, deviceList);map.put(dataList, dataList2);return map;}public void esayPoi2() {MapString, Object data getData();System.out.println(数据行数((List)data.get(dataList)).size());try {long start System.currentTimeMillis();TemplateExportParams params new TemplateExportParams(G:/test/t/stressStrainTemplateDongHua.xlsx);params.setColForEach(true);Workbook workbook ExcelExportUtil.exportExcel(params, data);FileOutputStream fos new FileOutputStream(G:/test/write/stressStrainTemplateDongHua.xlsx);workbook.write(fos);fos.close();long end System.currentTimeMillis();long cost end-start;System.out.println(esayPoi2 cost);} catch (Exception e) {e.printStackTrace();}}public void easyExcel4() {MapString, Object data getData();MapString, Object data1 new HashMapString, Object();data1.put(stationName, data.get(stationName));data1.put(pileNumber, data.get(pileNumber));data1.put(observer, data.get(observer));data1.put(observationDate, data.get(observationDate));data1.put(reviewer, data.get(reviewer));data1.put(reviewDate, data.get(reviewDate));ListDeviceDto deviceList (ListDeviceDto) data.get(deviceList);ListStressStrainDataDto dataList (ListStressStrainDataDto) data.get(dataList);// 根据用户传入字段 导出数据SetString includeColumnFiledNames new HashSetString();includeColumnFiledNames.add(date); // includeColumnFiledNames.add(time);for(int i0; ideviceList.size(); i){includeColumnFiledNames.add(v(i1));}System.out.println(数据行数((List)data.get(dataList)).size());try {long start System.currentTimeMillis();Resource resource new DefaultResourceLoader().getResource(classpath:templates/stressStrain/stressStrainTemplateDongHua.xlsx);FastByteArrayOutputStream outputStream new FastByteArrayOutputStream();// 方案2 分多次 填充 会使用文件缓存省内存 // String templateFileName G:/test/t/stressStrainTemplateDongHua2.xlsx; // try (com.alibaba.excel.ExcelWriter excelWriter EasyExcel.write(fastByteArrayOutputStream).withTemplate(templateFileName).build()) { // WriteSheet writeSheet EasyExcel.writerSheet().build(); // FillConfig fillConfig FillConfig.builder().autoStyle(true).direction(WriteDirectionEnum.HORIZONTAL).build(); // excelWriter.fill(data1, writeSheet); // excelWriter.fill(new FillWrapper(deviceList, deviceList), fillConfig, writeSheet);writeSheet.setIncludeColumnFieldNames(includeColumnFiledNames); // excelWriter.fill(new FillWrapper(dataList, dataList), writeSheet); // }try (com.alibaba.excel.ExcelWriter excelWriter EasyExcel.write(outputStream).withTemplate(resource.getInputStream()).build()) {WriteSheet writeSheet EasyExcel.writerSheet().build();FillConfig fillConfig FillConfig.builder().autoStyle(true).direction(WriteDirectionEnum.HORIZONTAL).build();excelWriter.fill(data1, writeSheet);excelWriter.fill(new FillWrapper(deviceList, deviceList), fillConfig, writeSheet);excelWriter.fill(new FillWrapper(dataList, dataList), writeSheet);excelWriter.close();outputStream.flush();outputStream.close();} // FileOutputStream fileOutputStream new FileOutputStream(G:/test/write/123.xlsx); // outputStream.writeTo(fileOutputStream); // fileOutputStream.flush(); // fileOutputStream.close();long end System.currentTimeMillis(); // String templateFileName G:/test/t/stressStrainTemplateDongHua2.xlsx; // String fileName G:/test/write/stressStrainTemplateDongHua2.xlsx; // try (com.alibaba.excel.ExcelWriter excelWriter EasyExcel.write(fileName).withTemplate(resource.getInputStream()).build()) { // WriteSheet writeSheet EasyExcel.writerSheet().build(); // FillConfig fillConfig FillConfig.builder().autoStyle(true).direction(WriteDirectionEnum.HORIZONTAL).build(); // excelWriter.fill(data1, writeSheet); // excelWriter.fill(new FillWrapper(deviceList, deviceList), fillConfig, writeSheet);writeSheet.setIncludeColumnFieldNames(includeColumnFiledNames); // excelWriter.fill(new FillWrapper(dataList, dataList), writeSheet); // }long cost end-start;System.out.println(easyExcel4 cost);} catch (Exception e) {e.printStackTrace();}}public void easyExcelCSV2() {MapString, Object data getData();ListDeviceDto deviceList (ListDeviceDto) data.get(deviceList);ListStressStrainDataDto dataList (ListStressStrainDataDto) data.get(dataList);// 根据用户传入字段 导出数据SetString includeColumnFiledNames new HashSetString();ListListString headList new ArrayListListString();ListString head0 new ArrayListString();head0.add(时间);head0.add(与路表距离);head0.add(结构层位);headList.add(head0);includeColumnFiledNames.add(dateTime);for(int i0; ideviceList.size(); i){includeColumnFiledNames.add(v(i1));ListString head new ArrayListString();head.add(deviceList.get(i).getSn());head.add(deviceList.get(i).getSurfaceDistance().toString());head.add(deviceList.get(i).getStructuralLayer());headList.add(head);}System.out.println(数据行数((List)data.get(dataList)).size());try {long start System.currentTimeMillis();try {EasyExcel.write(G:/test/write/stressStrainTemplateDongHua2.csv, StressStrainDataDto.class).head(headList).includeColumnFieldNames(includeColumnFiledNames).excelType(ExcelTypeEnum.CSV).sheet(sss).doWrite(dataList);} finally {}long end System.currentTimeMillis();long cost end-start;System.out.println(easyExcel2 cost);} catch (Exception e) {e.printStackTrace();}}}
http://www.zqtcl.cn/news/371587/

相关文章:

  • 网站建设外包公司怎么样珠海网站排名提升
  • 电子商务网站建设结业论文做网站的图片字虚
  • 米拓建站最新进展注册做网站的公司有哪些
  • 设计网站设计wordpress 改系统
  • 学校网站建设评审会议通知网站是怎么赢利的
  • 手机网站建设 苏州优化网站哪个好
  • 网站建设流程方案通州网站建设公司
  • 免费的十大免费货源网站全国领先网站制作
  • 农业网站建设方案 ppt中国有什么网站做跨境零售
  • 网站文章结构变更怎么做301如何自己制作自己的网站
  • 网站网站平台建设方案免费制作桥架app
  • 杭州网站界面设计招网站建设销售
  • 网站开发 流程图广州优化seo
  • 夫妻工作室网站建设品牌建设的内容
  • php搭建网站后台建设银行网站如何修改账单地址
  • 网站域名查询系统关键词语有哪些
  • 专业金融网站建设wordpress匿名投稿
  • 生产做网站表带的制造厂家百度文库个人登录
  • 丰都网站建设费用成都品牌包装设计
  • 建设项目安监备案网站免费学生网页制作成品代码
  • wordpress默认登陆地址修改廊坊百度关键词优化怎么做
  • 免费下载策划书的网站外贸网站 域名后缀
  • 网站导航条做信息网站需要什么
  • 网站推广朋友圈文案嵩县网站建设
  • 网站建设实践考试试题app运营推广策划方案
  • django网站开发源码阿里邮箱登录
  • 机床网站建设网站关键词优化怎么做
  • 全网营销一站式推广wordpress新文章加new
  • 做网站哪个系统最安全长沙简界网络科技有限公司
  • 象山县城乡和住房建设局网站上海公司牌照最新价格