如何使用easypoi导入excel
发表于:2025-02-19 作者:千家信息网编辑
千家信息网最后更新 2025年02月19日,这篇文章给大家介绍如何使用easypoi导入excel,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。使用easypoi导入exceleasypoi导入excel需要引入依赖:
千家信息网最后更新 2025年02月19日如何使用easypoi导入excel
这篇文章给大家介绍如何使用easypoi导入excel,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
使用easypoi导入excel
easypoi导入excel需要引入依赖:
cn.afterturn easypoi-base 3.2.0 cn.afterturn easypoi-web 3.2.0 cn.afterturn easypoi-annotation 3.2.0
首先我们准备一个excel模板并带有一些数据
第二步:准备一个实体对象
package com.xash.quartzDemo.entity;import cn.afterturn.easypoi.excel.annotation.Excel;import cn.afterturn.easypoi.excel.annotation.ExcelTarget;import com.fasterxml.jackson.annotation.JsonFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;@ExcelTarget("Layer")public class Layer { private String layerId; @Excel(name = "法规名称", isImportField = "true_st") private String layerName; @Excel(name = "法规描述", isImportField = "true_st") private String description; @Excel(name = "法规发布日期",importFormat = "yyyy-MM-dd") private String releaseTime; @Excel(name = "法规上传日期",importFormat = "yyyy-MM-dd") private String recordTime; private String fileName; public String getLayerId() { return layerId; } public void setLayerId(String layerId) { this.layerId = layerId == null ? null : layerId.trim(); } public String getLayerName() { return layerName; } public void setLayerName(String layerName) { this.layerName = layerName == null ? null : layerName.trim(); } public String getDescription() { return description; } public void setDescription(String description) { this.description = description == null ? null : description.trim(); } SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); public String getReleaseTime() { return releaseTime; } public void setReleaseTime(Date releaseTime) throws ParseException { this.releaseTime =sdf.format(releaseTime); } public String getRecordTime() { return recordTime; } public void setRecordTime(Date recordTime) throws ParseException { this.recordTime =sdf.format(recordTime); } public String getFileName() { return fileName; } public void setFileName(String fileName) { this.fileName = fileName == null ? null : fileName.trim(); }}
此处,日期格式对象excel到实体不能自动按格式转换,也不知道原因,所以手动格式化了日期
第三步
创建导入工具类
package com.xash.quartzDemo.util;import java.io.File;import java.util.List;import org.apache.commons.lang3.StringUtils;import org.springframework.web.multipart.MultipartFile;import cn.afterturn.easypoi.excel.ExcelImportUtil;import cn.afterturn.easypoi.excel.entity.ImportParams;public class Upload { public static String executeUpload1(String uploadDir,MultipartFile file,String fileName) throws Exception { //文件后缀名 String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); //上传文件名 String filename = fileName + suffix; //服务器端保存的文件对象 File serverFile = new File(uploadDir + filename); //将上传的文件写入到服务器端文件内 file.transferTo(serverFile); return filename; } public staticList importExcel(String filePath, Integer titleRows, Integer headerRows, Class pojoClass){ if (StringUtils.isBlank(filePath)){ return null; } ImportParams params = new ImportParams(); params.setTitleRows(titleRows); params.setHeadRows(headerRows); List list = null; try { list = ExcelImportUtil.importExcel(new File(filePath), pojoClass, params); }catch (Exception e) { e.printStackTrace(); } return list; } public static List importExcel(MultipartFile file, Integer titleRows, Integer headerRows, Class pojoClass){ if (file == null){ return null; } ImportParams params = new ImportParams(); params.setTitleRows(titleRows); params.setHeadRows(headerRows); List list = null; try { list = ExcelImportUtil.importExcel(file.getInputStream(), pojoClass, params); } catch (Exception e) { e.printStackTrace(); } return list; }}
本例使用 public static
OK,准备工作做好后,就可以实现excel的导入工作了
准备一个controller前端控制器,
package com.xash.quartzDemo.controller;import java.util.ArrayList;import java.util.Date;import java.util.List;import java.util.UUID;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import com.xash.quartzDemo.entity.Layer;import com.xash.quartzDemo.util.Upload;import cn.afterturn.easypoi.excel.entity.ImportParams;@RestControllerpublic class Eecelmport { @RequestMapping("/excel") public Listexcel() { String fliename="模板导入.xlsx"; List list=null;; try { list=Upload.importExcel("C:/Users/gaofei/Desktop/"+fliename, 1, 3, Layer.class); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return list; }}
前端访问:
http://192.168.2.81:8082/excel,后端响应并返回:
[{"layerId":null,"layerName":"hello","description":"hello","releaseTime":"2015-07-17","recordTime":"2015-09-17","fileName":null},{"layerId":null,"layerName":"world","description":"world","releaseTime":"2015-08-17","recordTime":"2015-10-17","fileName":null}]
关于如何使用easypoi导入excel就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
文件
日期
法规
准备
对象
格式
内容
前端
实体
更多
服务器
模板
工作
帮助
服务
不错
兴趣
原因
名称
后缀
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
汽车购票系统数据库
pharmgkb数据库下载
潼南区工商软件开发服务代理商
运营商服务器访问记录多久删除
亚马逊服务器被删除后能恢复吗
数据库安全奖金
光谷做软件开发多少钱
医院网络安全有哪些方面
是非题吉他谱软件开发
潍坊歌尔软件开发工资多少
为什么服务器的物理内存占用过高
app云服务器优缺点
打印机服务器无法打开属性
曙光服务器虚拟化设计
mc服务器怎么复制建筑物
常州衡器管理软件开发公司
信息网络技术实践报告
电子科技大学网络安全宣传周
国家网络安全培养
工业控制网络技术作业
大型软件开发模式
vb 操作数据库慢
问道登陆连接服务器超时
数据库故障有哪些类型
市州网络安全管理的措施
熙岳软件开发
服务器ssd贵吗
开发芯片不是软件开发的吗
玉溪4351网络安全公司
未连接服务器是什么