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

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

1、pom文件引入starter

<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-spring-boot-starter</artifactId>
<version>3.2.</version>
</dependency>

2、定义需要导出的对象DTO

@Table(name = "ORDERS")
public class OrderExcelDto{ @Excel(name = "ORDER_ID", width = ,orderNum = "")
private String orderId; @Excel(name = "CREATE_TIME",width = ,exportFormat = "yyyy-MM-dd HH:mm:ss", orderNum = "")
private Date createTime; @Excel(name = "STATUS",width = ,replace = {"created_01", "payment_02","used_03","time out_04"}, orderNum = "")
private String status; public String getOrderId() {
return orderId;
} public void setOrderId(String orderId) {
this.orderId = orderId;
} public Date getCreateTime() {
return createTime;
} public void setCreateTime(Date createTime) {
this.createTime = createTime;
} public String getStatus() {
return status;
} public void setStatus(String status) {
this.status = status;
}
}

具体语义如下,详情可见官网

name:列明;replace:前者是最后替换的值,后者是数据库的值;exportFormat:导出的时间格式,以这个是否为空来判断是否需要格式化日期;width:列宽等

3、将查询的sql映射到上述的DTO,然后通过starter中提供工具类做导出操作

@GetMapping("/orderExport")
public void orderExport(HttpServletResponse response) throws Exception {
response.setHeader("content-Type", "application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment;filename=orders.xls");
List<OrderExcelDto> list = orderService.queryOrderExcel();
Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(),OrderExcelDto.class,list);
workbook.write(response.getOutputStream());
}

4、前台js中可以直接定义事件触发上述get请求

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

最后就可以验证一下了,如果有问题可以邮件我。

spring boot + easypoi两行代码excel导入导出的更多相关文章

  1. 一个基于POI的通用excel导入导出工具类的简单实现及使用方法

    前言: 最近PM来了一个需求,简单来说就是在录入数据时一条一条插入到系统显得非常麻烦,让我实现一个直接通过excel导入的方法一次性录入所有数据.网上关于excel导入导出的例子很多,但大多相互借鉴. ...

  2. Mego(04) - NET简单实现EXCEL导入导出

    前言 相信做过信息系统的朋友都会遇到EXCEL导入导出的相关开发,做过不少EXCEL导入导出后总结起来大致有如下几种方式实现: ADO.NET的OldDb或ODBC连接EXCEL使用DataTable ...

  3. 利用反射实现通用的excel导入导出

    如果一个项目中存在多种信息的导入导出,为了简化代码,就需要用反射实现通用的excel导入导出 实例代码如下: 1.创建一个 Book类,并编写set和get方法 package com.bean; p ...

  4. Excel导入导出的业务进化场景及组件化的设计方案(上)

    1:前言 看过我文章的网友们都知道,通常前言都是我用来打酱油扯点闲情的. 自从写了上面一篇文章之后,领导就找我谈话了,怕我有什么想不开. 所以上一篇的(下)篇,目前先不出来了,哪天我异地二次回忆的时候 ...

  5. ASP.NET 之 常用类、方法的超级总结,并包含动态的EXCEL导入导出功能,奉上类库源码

    实用类:UtilityClass 包含如下方法 判断对象是否为空或NULL,如果是空或NULL返回true,否则返回false 验证手机号是否正确 13,15,18 验证邮箱 验证网址 MD5加密,返 ...

  6. Octopus——excel导入导出工具

    Octopus Octopus是一个简易的Excel导入导出工具.目前主要就两个功能: 导入:将excel中一行数据转换为指定的java对象,并通过指定的正则表达式检查合法性. 导出:按照给定的xml ...

  7. JeeSite中Excel导入导出

    在各种管理系统中,数据的导入导出是经常用到的功能,通常导入导出以Excel.CSV格式居多.如果是学习的过程中,最好是自己实现数据导入与导出的功能,然而在项目中,还是调用现成的功能比较好.近期一直使用 ...

  8. 土制Excel导入导出及相关问题探讨

    转载请注明出处https://www.cnblogs.com/funnyzpc/p/10392085.html 新的一年,又一个开始,不见收获,却见年龄,好一个猪年,待我先来一首里尔克的诗: < ...

  9. Java 使用 Jxl 实现 Excel 导入导出

    开发过程中经常需要用到数据的导入导出功能,之前用的是POI,这次使用JXL,JXL相对于POI来说要轻量简洁许多,在数据量不大的情况下还是非常实用的.这里做一下使用JXL的学习记录.首先需要导入相应的 ...

随机推荐

  1. vue 动态循环出的多个select 不能重复选择相同的数据

    看图说话 HTML: JS:        1)  2) 3) 有更好的方法可以相互学习.

  2. linux 修改配色

    PS1="\[\e[37;40m\][\[\e[32;40m\]\u\[\e[37;40m\]@\h \[\e[36;40m\]\w\[\e[0m\]]\\$ " ORvim ~/ ...

  3. 锋利的jQuery初学(5)

    层级选择器: 层级选择器 符号 解释 使用 空格 后代选择器 $("div p").css("","") + 紧邻选择器 $("d ...

  4. Android Studio删除依赖

    遇到报错 就是要删 ①在build.gradle中删除对应依赖代码(注释了,但是没用??) ②检查工程中的依赖 点击"file">>“project structure ...

  5. Cookie保存用户名和密码

    首次登录: 第二次登录: 百度网盘: 链接: https://pan.baidu.com/s/12W4B5-Bfyc_021oyVYkEJw 提取码: r55h

  6. HOMEWORK1

    回顾你过去将近3年的学习经历 当初你报考的时候是真正喜欢计算机这个专业吗? 当初报考的时候是选择英语和计算机专业,报英语那个学校没去上,就来学了计算机,对计算机专业的感觉介于喜欢和热爱之间,就是说还是 ...

  7. BZOJ 4265 货币系统

    今天比赛的时候做到的.题解写得很简单,但是感觉对于我这种蒟蒻还是很有思考的价值的. 题面(由于题面很短,就不概括了):小Q当上了新的宇宙大总统,他现在准备重新设计一套货币系统. 这个货币系统要求一共有 ...

  8. 内网渗透 关于GPO

    网上有很多讲内网渗透的文章,但看来看去还是一老外的博客给力,博客地址:www.harmj0y.net/blog,看完就明白这里面的很多思路都非常好. 做内网时,有时会碰到目标的机器开防火墙,所有端口基 ...

  9. Eclipse 中快捷键

    Ctrl + Shift + T   查看原生类定义

  10. MySQL 表字段操作

    MySQL 表字段操作 一.增加表字段 1)mysql> alter table 二.删除表字段 三.修改表字段