资讯专栏INFORMATION COLUMN

spring boot + easypoi快速实现excel导入导出

summerpxy / 1315人阅读

摘要:封装了让我们能够非常简单的实现导出模板导出导入模板导出等,具体可见官网我这边实现了一个的导出,记录一下。

easypoi封装了poi让我们能够非常简单的实现Excel导出,Excel模板导出,Excel导入,Word模板导出等,具体可见官网:http://www.afterturn.cn/

我这边实现了一个excel的导出,记录一下。

1、pom文件引入starter

</>复制代码

  1. cn.afterturn
  2. easypoi-spring-boot-starter
  3. 3.2.0
2、定义需要导出的DTO

</>复制代码

  1. @Table(name = "ORDERS")
  2. public class OrderExcelDto{
  3. @Excel(name = "ORDER_ID", width = 25,orderNum = "0")
  4. private String orderId;
  5. @Excel(name = "CREATE_TIME",width = 20,exportFormat = "yyyy-MM-dd HH:mm:ss", orderNum = "1")
  6. private Date createTime;
  7. @Excel(name = "STATUS",width = 20,replace = {"created_01", "payment_02","used_03","time out_04"}, orderNum = "2")
  8. private String status;
  9. public String getOrderId() {
  10. return orderId;
  11. }
  12. public void setOrderId(String orderId) {
  13. this.orderId = orderId;
  14. }
  15. public Date getCreateTime() {
  16. return createTime;
  17. }
  18. public void setCreateTime(Date createTime) {
  19. this.createTime = createTime;
  20. }
  21. public String getStatus() {
  22. return status;
  23. }
  24. public void setStatus(String status) {
  25. this.status = status;
  26. }
  27. }

</>复制代码

  1. 具体语义如下,详情可见官网
    name:列明;replace:前者是最后替换的值,后者是数据库的值;exportFormat:导出的时间格式,以这个是否为空来判断是否需要格式化日期;width:列宽等
3、将查询的sql映射到上述的DTO,然后通过starter中提供工具类做导出操作

</>复制代码

  1. @GetMapping("/orderExport")
  2. public void orderExport(HttpServletResponse response) throws Exception {
  3. response.setHeader("content-Type", "application/vnd.ms-excel");
  4. response.setHeader("Content-Disposition", "attachment;filename=orders.xls");
  5. List list = orderService.queryOrderExcel();
  6. Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(),OrderExcelDto.class,list);
  7. workbook.write(response.getOutputStream());
  8. }
4、前台js中可以直接定义事件触发上述get请求

</>复制代码

  1. function export() {
  2. document.location.href = host+"/orderExport";
  3. }

就这样就可以非常快速的实现一个excel导出了,还有很多好用的功能可以看官网。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/77099.html

相关文章

  • 如何用java完成Excel快速导入导出

    摘要:日常工作中是我们经常需要处理的文件报表的生成数据的导出几乎每个项目都需要写对应的处理作者也是编写这块代码大军的一员能否有方法让我们不用重复编写代码呢能否只要简单配置就可以完成我们的生成呢作者分析了和对象的关系发现就是我们的一个对象是我们的一 日常工作中,Excel是我们经常需要处理的文件,报表的生成,数据的导出,几乎每个项目都需要写对应的处理.作者也是编写这块代码大军的一员,能否有方法...

    zhichangterry 评论0 收藏0
  • java 导出 excel 最佳实践,java 大文件 excel 避免OOM(内存溢出) exce

    摘要:消费之后,多线程处理文件导出,生成文件后上传到等文件服务器。前端直接查询并且展现对应的任务执行列表,去等文件服务器下载文件即可。这客户体验不友好,而且网络传输,系统占用多种问题。拓展阅读导出最佳实践框架 产品需求 产品经理需要导出一个页面的所有的信息到 EXCEL 文件。 需求分析 对于 excel 导出,是一个很常见的需求。 最常见的解决方案就是使用 poi 直接同步导出一个 exc...

    K_B_Z 评论0 收藏0
  • 慕课网_《解密JAVA实现Excel导入导出》学习总结

    时间:2017年07月06日星期四说明:本文部分内容均来自慕课网。@慕课网:http://www.imooc.com教学源码:无学习源码:https://github.com/zccodere/s... 第一章:课程介绍 1-1 预备知识 基础知识 struts2框架(上传下载功能) xml解析技术(导入模板) JQuery EasyUI(前台美观) 课程目录 实现方式 定制导入模版 导入文件 导...

    enrecul101 评论0 收藏0
  • 两年了,我写了这些干货!

    摘要:开公众号差不多两年了,有不少原创教程,当原创越来越多时,大家搜索起来就很不方便,因此做了一个索引帮助大家快速找到需要的文章系列处理登录请求前后端分离一使用完美处理权限问题前后端分离二使用完美处理权限问题前后端分离三中密码加盐与中异常统一处理 开公众号差不多两年了,有不少原创教程,当原创越来越多时,大家搜索起来就很不方便,因此做了一个索引帮助大家快速找到需要的文章! Spring Boo...

    huayeluoliuhen 评论0 收藏0

发表评论

0条评论

summerpxy

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<