首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
30 篇文章
1
可视化接口管理平台 YApi,让你轻松搞定 API 的管理问题
2
面试必考:秒杀系统如何设计?
3
Spring Boot 中的线程池,这也太好用了!
4
用了很多年的 CMS 垃圾收集器,终于换成了 G1,真香!!
5
雪花算法到底是啥原理?附 Java 实现!
6
SpringBoot:优雅地处理全局异常
7
七种分布式事务的解决方案,一次讲给你听!
8
RabbitMQ 死信队列是什么鬼?
9
RabbitMQ 中的消息还能过期?
10
来,通过 Excel 来认识神器——POI
11
使用easypoi导出excel
12
图文并茂:AQS 是怎么运行的?
13
使用 Docker 部署 Spring Boot 项目,带劲!!
14
写了个牛逼的日志切面,甩锅更方便了!
15
终于有人把 Spring 循环依赖讲清楚了!
16
免费获取 IntelliJ IDEA 激活码的 6 种方式!
17
Spring Boot 如何快速集成 Redis 哨兵?
18
10w+ Excel 数据导入,怎么优化?
19
10 个牛逼的单行代码编程技巧,你会用吗?
20
Logback 配置文件这么写,TPS 提高 10 倍!
21
18 个示例带你掌握 Java 8 日期时间处理!
22
用户密码到底要怎么加密存储?
23
Spring Cloud 如何动态刷新 Git 仓库配置?
24
为什么微服务一定要有网关?
25
牛逼哄哄的数据库连接池,底层原理是个啥?
26
如何快速安全的插入千万条数据?
27
Redis 是怎么实现 “附近的人” 的?
28
20 亿的 URL 集合,如何快速判断其中一个?
29
不用找了,大厂在用的分库分表方案,都在这了!
30
Java 程序员常犯的 10 个 SQL 错误!

使用easypoi导出excel

EasyPOI是在jeecg的poi模块基础上,继续开发独立出来的,可以说是2.0版本,EasyPoi封装的目的和jeecg一致,争取让大家write less do more ,在这个思路上easypoi可以让大家几乎不写代码的情况下完成Excel的导入导出,Excel的模板导出(制作漂亮的Excel),Word模板的导出,让大家从复杂的POI的接口中解脱出来,同时更迅速的完成工作.

EasyPoi的特性

•      注解是基础,让大家见名知意

•      注解是核心,让大家快速开发

•      简单的导出导入接口,可以快速完成

•      简单的数据接口,自定义数据

•      Excel模板,美化的Excel,程序一天,Excel1分钟

•      Word模板,通知类文件的强大神器

•      SpringView集成

easypoi在项目中的应用:

需要引入的jar包:

代码语言:javascript
复制
        <!--easypoi导出excel-->
        <!--easypoi-base 导入导出的工具包,可以完成Excel导出,导入,Word的导出,Excel的导出功能-->
        <dependency>
            <groupId>org.jeecg</groupId>
            <artifactId>easypoi-base</artifactId>
            <version>2.3.1</version>
        </dependency>
        <!--easypoi-web  耦合了spring-mvc 基于AbstractView,极大的简化spring-mvc下的导出功能-->
        <dependency>
            <groupId>org.jeecg</groupId>
            <artifactId>easypoi-web</artifactId>
            <version>2.3.1</version>
        </dependency>
        <!--easypoi-annotation 基础注解包,作用与实体对象上,拆分后方便maven多工程的依赖管理-->
        <dependency>
            <groupId>org.jeecg</groupId>
            <artifactId>easypoi-annotation</artifactId>
            <version>2.3.1</version>
        </dependency>

然后在实体类中添加easypoi的注解:

代码语言:javascript
复制
@ExcelTarget("summaryexcel")
@Data
public class SummaryExcel {


    @Excel(name = "日期", orderNum = "1", mergeVertical = true, isImportField = "date")
    private String date;//当天日期

    @Excel(name = "能源类型", orderNum = "2", mergeVertical = true, isImportField = "type")
    private String type;         // 能源类型

    @Excel(name = "能源用量", orderNum = "3", mergeVertical = true, isImportField = "sum")
    private Double sum;          // 用量
}

然后就可以在controller层直接使用easypoi:

代码语言:javascript
复制
    
  @GetMapping("getexcel")
  public void download(HttpServletRequest request, HttpServletResponse response,String start,String end) throws Exception {
        // 告诉浏览器用什么软件可以打开此文件
        response.setHeader("content-Type", "application/vnd.ms-excel");
        // 下载文件的默认名称
        response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode("数据表","UTF-8") + ".xls");
        //编码
        response.setCharacterEncoding("UTF-8");
        List<SummaryExcel> list = summaryService.summaryexcel(start,end);
        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), SummaryExcel.class, list);
        workbook.write(response.getOutputStream());
    }

这样一个简单的用easypoi实现excel导出就完成了。

easypoi在开源中国:https://www.oschina.net/news/54995/jeecg-easypoi-2-0-3

easypoi文档:http://easypoi.mydoc.io/

下一篇
举报
领券