首页 > 其他分享 >关于若依框架实现list数据导出到excel并实现下载(简单实现)

关于若依框架实现list数据导出到excel并实现下载(简单实现)

时间:2023-04-21 23:33:57浏览次数:40  
标签:文件 String filePath 实现 Excel excel list response

https://www.cnblogs.com/jdearfaust/p/16661595.html

没看源码,仅仅会用

先是在需要导出的实体类上添加若依自带的@Excel的注解,注解中主要的两个参数一个是name用于生成excel中的字段名,一个是sort用于在excel中字段的排序

@Excel(name = "车辆id",cellType = Excel.ColumnType.NUMERIC,sort = 1) private Integer id;   @Excel(name = "在线状态",sort = 2) private Boolean online;     @Excel(name = "终端条形码",sort = 3) private String terminalBarcode;   @Excel(name = "终端编码",sort = 4) private String terminalCode;

实体类标注完毕后先进行需要导出的数据的查询以及使用若依生成excel文件(文件地址在配置文件里修改)

@PostMapping("exportExcle")  private void download(@RequestBody VehicleInfo VehicleInfo, HttpServletResponse response){<br>     //查询需要导出的数据      List<VehicleInfo> list = vehicleManageService.exportVehicleInfo(VehicleInfo);      //根据生成的数据生成excel表格<br>     ExcelUtil<VehicleInfo> util = new ExcelUtil<VehicleInfo>(VehicleInfo.class);<br>      //这里修改了若依自带的ExcelUtil方法让其返回文件的完整路径而是不是原先的AjaxResult      String filePath = util.exportExcel(list,"车辆列表");<br>      //调用了通用下载方法进行文件下载      download(filePath,response);  } 通用文件下载方法 @PostMapping("excleDownload") public void download(String filePath, HttpServletResponse response) {<br>     //调用通用自定义的通用下载方法     FileUtils.download(filePath, Boolean.TRUE, response); } 文件下载的实现 public static void download(String filePath, Boolean delete, HttpServletResponse response)    {        //重新设置文件名 年月日时分秒_表格名称        String responseFileName = DateTimeFormatter.ofPattern("yyyy-MM-dd hh:mm:ss").format(LocalDateTime.now())+"_"+filePath.substring(filePath.length()-9);        try        {            File file = new File(filePath);            //判断文件是否存在            if (file.exists()) {                //让浏览器认识                response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");                response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);                //返回相应流以及文件名                FileUtils.setAttachmentResponseHeader(response, responseFileName);                //获取文件并输出流                FileUtils.writeBytes(filePath, response.getOutputStream());                //输出完毕后删除服务器端文件                if (delete){                    deleteFile(filePath);                }            }        }        catch (Exception e)        {            log.error("下载文件失败", e);        }    }    

 

标签:文件,String,filePath,实现,Excel,excel,list,response
From: https://www.cnblogs.com/chuangsi/p/17342211.html

相关文章

  • Rainbond 结合 Jpom 实现云原生 & 本地一体化项目管理
    Jpom是一个简而轻的低侵入式在线构建、自动部署、日常运维、项目运维监控软件。提供了:节点管理:集群节点,统一管理多节点的项目,实现快速一键分发项目文件项目管理:创建、启动、停止、实时查看项目控制台日志,管理项目文件SSH终端:在浏览器中执行SSH终端,方便进行日常运维,记录执......
  • C++实现职工管理系统
    1、管理系统需求1.1考察知识点:C++的面向对象性,文件的读写操作1.2需求分析职工管理系统可以用来管理公司内所有员工的信息利用C++来实现一个基于多态的职工管理系统公司中职工分为三类:普通员工、经理、老板,显示信息时,需要显示职工编号、职工姓名、职工岗位、以及职责普通......
  • linux 中实现数据的每一行进行排序
     001、(base)[b20223040323@admin1test2]$lsa.txt(base)[b20223040323@admin1test2]$cata.txt##测试数目689375256882427(base)[b20223040323@admin1test2]$foriin{1..3};dosed-n"$i"pa.txt|sed's//\n/g'|......
  • unity实现简单AR识别
    首先前往unity官网:https://unity.cn/releases,下拉找到下载UnityHub绿色按钮下载完安装进入UnityHub中,在侧边栏找到Installs,点击打开下载如图所示的unity版本(注:unity同ue,只能高版本向低版本兼容)下载过程中记得取消勾选Documentation,选择简体中文(注:很多内容需要访问外网......
  • 使用 go-conntrack 包来实现 conntrack 会话的创建和删除
    packagemainimport("fmt""time""github.com/florianl/go-conntrack")funcmain(){//创建conntrack客户端client,err:=conntrack.Dial(nil)iferr!=nil{panic(err)}deferclient......
  • linux 中实现按照行压缩连续的重复
     001、(base)[b20223040323@admin1test2]$lsa.txt(base)[b20223040323@admin1test2]$cata.txt##测试数据erkjabababjkababuyddxyxyxyxyxymnmnmnue878787_k_kjhrtrt(base)[b20223040323@admin1test2]$awk'{temp=$1;printf(&......
  • C++实现通讯录管理系统
    C++实现简单的通讯录管理系统1.功能设计通讯录是一个可以记录亲人、好友信息的工具。本代码主要利用C++来实现一个通讯录管理系统系统中需要实现的功能如下:●添加联系人:向通讯录中添加新人,信息包括(姓名、性别、年龄、联系电话、家庭住址)最多记录1000人●显示联系人:显......
  • EasyExcel格式化映射注解和样式注解详解
     https://blog.csdn.net/qq_44749491/article/details/127879946一、概述使用注解很简单,只要在对应的实体类上面加上注解即可。也就是说使用实体类模型来读写Excel文件时,可以通过注解来控制实体类字段和Excel列之间的对应关系。二、ExcelProperty2.1作用ExcelProperty注解用......
  • ruoyi框架自定义导出的Excel文件名
      https://www.cnblogs.com/an-drew/p/ruoyi-custom-excel.html#!comments这是ruoyi界面的导出按钮,点击导出后 默认导出的Excel文件名是: Unix时间戳+Controller传入的sheetName+.xlsx(对应下图中的文件名:1602402277993+info+.xlsx)  但是我想要的自定义E......
  • 2.自定义@Excel注解实现数据Excel形式导入导出
    https://zzpc.net/content/206150.html前言这几天在学习如何使用自定义注解实现Excel格式数据导入导出,参考的还是若依框架里面的代码,由于是初学,所以照猫画虎呗,但是难受的是需要复制并根据自己项目修改作者自定义的工具类以及导入这些工具类的依赖包。由于吃了这个苦,我决定把......