建筑建材网站设计费用做银行应该关注的网站
- 作者: 五速梦信息网
- 时间: 2026年04月20日 10:41
当前位置: 首页 > news >正文
建筑建材网站设计费用,做银行应该关注的网站,网站公司设计 网站首页,英德网络推广EasyExcel导入/导出Excel文件简单写法 1、导入依赖 2、创建简单导入、导出demo 3、创建类 继承AnalysisEventListener#xff08;导入Excel监听解析表格数据#xff09; 4、创建类 基于注解 自定义Excel导出模版 1、导入EasyExcel依赖 !–导入EasyExcel…EasyExcel导入/导出Excel文件简单写法 1、导入依赖 2、创建简单导入、导出demo 3、创建类 继承AnalysisEventListener导入Excel监听解析表格数据 4、创建类 基于注解 自定义Excel导出模版 1、导入EasyExcel依赖 !–导入EasyExcel依赖– dependency groupIdcom.alibaba/groupId artifactIdeasyexcel/artifactId version3.0.5/version /dependency 2、创建简单导入、导出demo import com.alibaba.excel.EasyExcel; import com.google.common.collect.Lists; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.List; /** * ClassName ExcelTest * Descripition easyExcel 导入/导出 * Author admin * Date 2023/10/9 13:56 / public class ExcelTest { public static void main(String[] args) { ExcelTest excelTest new ExcelTest(); // easyExcel 导入Excel表格简单 : Demo excelTest.excelReadUtil(); // easyExcel 导出Excel表格简单 : Demo excelTest.excelWriteUtil(); } /** easyExcel 导入Excel表格简单 : Demo */ public void excelReadUtil() { // Excel文件地址(自定义个excel文件夹) String fileName D:\test\test001\desktop\excel_test.xlsx; //记录开始读取Excel时间,也是导入程序开始时间 long startReadTime System.currentTimeMillis(); System.out.println(——开始读取Excel的Sheet时间(包括导入数据过程): startReadTime ms——); //读取所有Sheet的数据.每次读完一个Sheet就会调用这个方法 /ListObject list EasyExcel.read(fileName, new CustomListener()).headRowNumber(1).doReadAllSync(); for (Object o : list) { System.out.println(o); }/ // EasyExcel.read(fileName).doReadAll(); // 多sheet页读取所有的sheet页 // EasyExcel.read(fileName, new CustomListener()).doReadAll(); // 读取第一个sheet页 EasyExcel.read(fileName, new CustomListener()).sheet().doRead(); long endReadTime System.currentTimeMillis(); System.out.println(——结束读取Excel的Sheet时间(包括导入数据过程): endReadTime ms——); System.out.println(——读取Excel的Sheet时间(包括导入数据)共计耗时: (endReadTime - startReadTime) ms——); } Excel导入截图 控制台输出截图 /** * easyExcel 导出Excel表格简单 : Demo / public void excelWriteUtil() { //1、创建一个文件对象 File excelFile new File(D:\test\test001\desktop\excel_test1001.xlsx); //2、判断文件是否存在不存在则创建一个Excel文件 if (!excelFile.exists()) { try { excelFile.createNewFile();//创建一个新的文件 } catch (IOException e) { e.printStackTrace(); } } //3、指定需要那个class去写。然后写到第一个sheet名字为模版然后文件流会自动关闭 EasyExcel.write(excelFile, ExcelTemplate.class).sheet(订单模版).doWrite(queryToExcel()); } /** 1、查询数据库获取导出的数据集合 * 2、集合转换导出模版实体集合ExcelTemplate * * return / public ListExcelTemplate queryToExcel() { // 1、查询数据库获取导出的数据集合 // 模拟业务代码,获取数据集 ListExcelTemplate orders Lists.newArrayList(); for (int i 0; i 50; i) { ExcelTemplate template1 new ExcelTemplate(1000L i, 订单01 i, 商品名称 i, sk1001 i, 36L i, 50L i, 收件人 i, 北京科技园 i); orders.add(template1); } // 2、集合转换导出模版实体集合ExcelTemplate ListExcelTemplate excels new ArrayList(); //遍历数据集导出Excel for (int i 0; i orders.size(); i) { ExcelTemplate order orders.get(i); ExcelTemplate data new ExcelTemplate(); data.setOrderNum(order.getOrderNum()); data.setOrderName(order.getOrderName()); data.setGoodsName(order.getGoodsName()); data.setGoodsNum(order.getGoodsNum()); data.setPrice(order.getPrice()); data.setNum(order.getNum()); data.setUserName(order.getUserName()); data.setAddress(order.getAddress()); excels.add(data); } return excels; } } Excel导出截图 3、创建类 继承AnalysisEventListener导入Excel监听解析表格数据 import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; import com.alibaba.excel.read.listener.ReadListener; import com.alibaba.fastjson.JSON; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.assertj.core.util.Lists; import java.util.List; import java.util.Map; /** ClassName CustomListener * Descripition 导入Excel监听解析表格数据 * Author admin * Date 2023/10/9 15:40 / Slf4j public class CustomListener extends AnalysisEventListener { // 处理数据: 分批导入阈值 private static final Long size 8L; // private ListMapString, String list Lists.newArrayList(); private ListObject list Lists.newArrayList(); // 每解析一行数据,该方法会被调用一次 Override public void invoke(Object o, AnalysisContext analysisContext) { log.info(Excel每解析一行数据,该方法(invoke)会被调用一次 data : {}, JSON.toJSONString(o)); // int size analysisContext.readRowHolder().getCellMap().entrySet().size(); // System.out.println(size); list.add(o); if(list.size() CustomListener.size){ for (Object o1 : list) { System.out.println(o1); } System.out.println(处理数据: 分批导入阈值: size); System.out.println(); System.out.println(); list.clear(); } } // 全部解析完成被调用 Override public void doAfterAllAnalysed(AnalysisContext analysisContext) { System.out.println(最后剩余数据;不够分割 长度 : list.size()); if(CollectionUtils.isNotEmpty(list)){ for (Object o : list) { System.out.println(o); } System.out.println(); list.clear(); } System.out.println(解析数据完成!!!); // System.out.println(解析数据完成!!!); } } 4、创建类 基于注解 自定义Excel导出模版 import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.write.style.; import com.alibaba.excel.enums.poi.BorderStyleEnum; import com.alibaba.excel.enums.poi.FillPatternTypeEnum; import com.alibaba.excel.enums.poi.HorizontalAlignmentEnum; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.apache.poi.ss.usermodel.FillPatternType; import org.apache.poi.ss.usermodel.HorizontalAlignment; /** * ClassName ExcelTemplate * Descripition 导出模版 * Author admin * Date 2023/10/9 18:14 */ Data AllArgsConstructor NoArgsConstructor HeadRowHeight(value 50) // 头部行高 ContentRowHeight(value 25) // 内容行高 ColumnWidth(value 25) // 列宽 // 头背景设置成红色 IndexedColors.RED.getIndex() // HeadStyle(fillPatternType FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor 10) // 头字体设置成20, 字体默认宋体 HeadFontStyle(fontName 仿宋, fontHeightInPoints 20) // 头部边框实线 HeadStyle(borderTop BorderStyleEnum.THICK, borderBottom BorderStyleEnum.THICK, borderLeft BorderStyleEnum.THICK, borderRight BorderStyleEnum.THICK) // 内容的背景设置成绿色 IndexedColors.GREEN.getIndex() // ContentStyle(fillPatternType FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor 17) // 内容字体设置成20, 字体默认宋体 ContentFontStyle(fontName 楷体, fontHeightInPoints 20) // Excel设置内容字体是否水平居中、边框实线 ContentStyle(horizontalAlignment HorizontalAlignmentEnum.CENTER, borderTop BorderStyleEnum.MEDIUM, borderBottom BorderStyleEnum.MEDIUM, borderLeft BorderStyleEnum.DOUBLE, borderRight BorderStyleEnum.DOUBLE) public class ExcelTemplate { // 字符串的头背景设置成粉红 IndexedColors.PINK.getIndex() // HeadStyle(fillPatternType FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor 14) // 字符串的头字体设置成20 // HeadFontStyle(fontHeightInPoints 20) // 字符串的内容背景设置成天蓝 IndexedColors.SKY_BLUE.getIndex() // ContentStyle(fillPatternType FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor 40) // 字符串的内容字体设置成20,默认宋体 // ContentFontStyle(fontName 宋体, fontHeightInPoints 20) // 设置是否水平居中 // ContentStyle(horizontalAlignment HorizontalAlignmentEnum.LEFT) ExcelProperty(订单编码) private Long orderNum; ExcelProperty(订单名称) private String orderName; ExcelProperty(商品名称) private String goodsName; ExcelProperty(商品编码) private String goodsNum; ExcelProperty(价格) private Long price; ExcelProperty(数量) private Long num; ExcelProperty(用户名称) private String userName; ColumnWidth(value 80) // 列宽 ExcelProperty(收货地址) private String address; }
- 上一篇: 建筑公司网站首页图片怎么做网站讯息
- 下一篇: 建筑类网站的推荐理由河南网站建设设计价格
相关文章
-
建筑公司网站首页图片怎么做网站讯息
建筑公司网站首页图片怎么做网站讯息
- 技术栈
- 2026年04月20日
-
建筑公司网站的目标用户天河网站建设网络推广
建筑公司网站的目标用户天河网站建设网络推广
- 技术栈
- 2026年04月20日
-
建筑材料网站建设wordpress深度优化
建筑材料网站建设wordpress深度优化
- 技术栈
- 2026年04月20日
-
建筑类网站的推荐理由河南网站建设设计价格
建筑类网站的推荐理由河南网站建设设计价格
- 技术栈
- 2026年04月20日
-
建筑模板尺寸及价格唐山seo网络推广
建筑模板尺寸及价格唐山seo网络推广
- 技术栈
- 2026年04月20日
-
建筑模板施工图片化妆品网站优化
建筑模板施工图片化妆品网站优化
- 技术栈
- 2026年04月20日
