使用easyexcel导出
生活随笔
收集整理的這篇文章主要介紹了
使用easyexcel导出
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
寫了一個導出demo? 沒有詳細檢查? 各位大佬如果發現哪里不對? 歡迎指正
1、引入easyexcel
<dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>1.0.2</version></dependency>2、創建導出實體類,
?
導出實體類需要繼承BaseRowModel,每個字段上加注解@ExcelProperty(value = "", index = 0)
value值為在excel中想要顯示的列表頭名? ?index為第幾列
@Data public class DataDownloadRecordExcelExportVO extends BaseRowModel {@ExcelProperty(value = "資源名稱", index = 0)private String resourceName;@ExcelProperty(value = "數據源", index = 1)private String dataSource;}?3、編寫實現類
代碼中的filename是excel的文件名? ?自己決定就好
List<導出實體類> resultList= mapper.list(vo);if (!CollectionUtils.isEmpty(resultList)) { OutputStream out = null;try {response.setContentType("application/vnd.ms-excel");response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName + ExcelTypeEnum.XLSX.getValue(), "utf-8"));out = response.getOutputStream();ExcelWriter writer = new ExcelWriter(out, ExcelTypeEnum.XLSX);// 寫數據到 Writer 上下文中// 入參1: 數據庫查詢的數據list集合// 入參2: 要寫入的目標 sheetSheet sheet1 = new Sheet(1, 0, 導出實體類.class);// 將上下文中的最終 outputStream 寫入到指定文件中writer.write(resultList, sheet1);writer.finish();} catch (Exception e) {e.printStackTrace();} finally {try {if (out != null) {out.close();}} catch (IOException e) {e.printStackTrace();}}}總結
以上是生活随笔為你收集整理的使用easyexcel导出的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分布式事务原理及实战seata(转自微信
- 下一篇: 静态页面cors跨域问题