精华内容
下载资源
问答
  • EasyExcel导出excel

    2020-06-27 18:43:23
    EasyExcel导出excel 1.首先建立一个实体类 public class ExcelMode extends BaseRowModel { @ExcelIgnore //excel中不导出字段 private Integer id; @ExcelProperty(value = "姓名" ,index = 0) private String ...

    EasyExcel导出excel

    1.首先建立一个实体类

    public class ExcelMode extends BaseRowModel {
        @ExcelIgnore   //excel中不导出字段
        private Integer id;
        @ExcelProperty(value = "姓名" ,index = 0)
        private String name;
        @ExcelProperty(value = "密码" ,index = 1)
        private String password;
        @ExcelProperty(value = "手机号码",index = 2)
        private String phone;
        @ExcelProperty(value = "性别",index = 2,converter = SettlementConverter.class )
         //SettlementConverter.class 将数据库枚举字段转换成字符串类型(例:1/男,2/女
        private Integer sex;
    
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public String getPassword() {
            return password;
        }
    
        public void setPassword(String password) {
            this.password = password;
        }
    
        public String getPhone() {
            return phone;
        }
    
        public void setPhone(String phone) {
            this.phone = phone;
        }
    
        public Integer getSex() {
            return sex;
        }
    
        public void setSex(Integer sex) {
            this.sex = sex;
        }
    }
    
    1. SettlementConverter.class 实现 Converter 接口
    public class SettlementConverter implements Converter<Integer> {
    
        @Override
        public Class supportJavaTypeKey() {
            return null;
        }
    
        @Override
        public CellDataTypeEnum supportExcelTypeKey() {
            return null;
        }
    
        @Override
        public Integer convertToJavaData(CellData cellData, ExcelContentProperty excelContentProperty, GlobalConfiguration globalConfiguration) throws Exception {
            return null;
        }
    
        @Override
        public CellData convertToExcelData(Integer s, ExcelContentProperty excelContentProperty, GlobalConfiguration globalConfiguration) throws Exception {
            if(s == 1){
                return new CellData("男");
            }else {
                return new CellData("女");
            }
        }
    
    1. 导出excel
        @RequestMapping(value = "/toExcel")
    	@ResponseBody
    	public Object toExcel(HttpServletRequest rep , HttpServletResponse reps) {
    		try {
    			ExcelMode u = new ExcelMode();
    			
    			List<ExcelMode> list = userservice.ExcelMode();
    			String fileName = new String("文件名称.xlsx".getBytes(), "ISO-8859-1");
    			reps.addHeader("Content-Disposition", "filename=" + fileName);
    			ServletOutputStream out = reps.getOutputStream();
    			EasyExcelFactory.write(out, ExcelMode.class).sheet("文件标签名称").doWrite(list);
    		}catch (Exception e){
    			e.printStackTrace();
    		}
    		return null;
    	}
    
    展开全文
  • easyExcel导出excel

    千次阅读 2019-06-03 17:27:54
    /** * 导出EXCEL * * @throws FileNotFoundException */ @RequestMapping("/excel") public void excel(HttpServletRequest request, HttpServletResponse response) throws Exception { ...

    /**
         * 导出EXCEL
         *
         * @throws FileNotFoundException
         */
        @RequestMapping("/excel")
        public void excel(HttpServletRequest request, HttpServletResponse response) throws Exception {
            
            
             ExcelWriter writer = null;
                OutputStream outputStream = response.getOutputStream();
             try {
                //添加响应头信息
                response.setHeader("Content-disposition", "attachment; filename=" + "catagory.xls");
                response.setContentType("application/msexcel;charset=UTF-8");//设置类型
                response.setHeader("Pragma", "No-cache");//设置头
                response.setHeader("Cache-Control", "no-cache");//设置头
                response.setDateHeader("Expires", 0);//设置日期头

                //实例化 ExcelWriter
                writer = new ExcelWriter(outputStream, ExcelTypeEnum.XLS, true);

                //实例化表单
                Sheet sheet = new Sheet(1, 0, QInformationModel.class);
                sheet.setSheetName("客户信息管理");

                //获取数据
    //            PageUtils page = qInformationService.queryPage(params);
                List<QInformationModel> list = qInformationService.queryAll();

                //输出
                writer.write(list, sheet);
                writer.finish();
                outputStream.flush();
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                try {
                    response.getOutputStream().close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            
        }

    展开全文
  • JAVA使用easyexcel导出excel

    万次阅读 2018-11-28 14:32:03
    JAVA使用easyexcel导出excel 导出excel的工具有很多,如poi,jxl等但是他们导出excel会比较的消耗内存,一旦数据大起来可能造成内存溢出,而easyexcel很好的避免了内存溢出的问题。 首先下载easyexcel的依赖包: ...

    导出excel的工具有很多,如poi,jxl等但是他们导出excel会比较的消耗内存,一旦数据大起来可能造成内存溢出,而easyexcel很好的避免了内存溢出的问题。

    首先下载easyexcel的依赖包:

    <dependency>
        	<groupId>com.alibaba</groupId>
        	<artifactId>easyexcel</artifactId>
        	<version>1.0.4</version>
    </dependency>
    

    java模型映射(省略了get和set方法):

    public class ClsModal extends BaseRowModel{
    	
    	@ExcelProperty(value="班级编号",index=0)
    	private Integer cid;
    	
    	@ExcelProperty(value="班级名称",index=1)
    	private String cname;
    

    导出类:

    package exportExcel;
    
    import java.io.FileOutputStream;
    import java.io.OutputStream;
    import java.util.List;
    
    import com.alibaba.excel.ExcelWriter;
    import com.alibaba.excel.metadata.Sheet;
    import com.alibaba.excel.support.ExcelTypeEnum;
    
    public class ExportExcel {
    
    	public void export(List<ClsModal> clsList) {
    		try(OutputStream out=new FileOutputStream("C:\\Users\\hc\\Desktop\\exportCls.xlsx")) {
    			ExcelWriter writer=new ExcelWriter(out,ExcelTypeEnum.XLSX);
    			
    			if(!clsList.isEmpty()) {
    				/**
    				  * 1表示第1个工作表,
    				  * 0表示从第几行开始读取数据,最小值为0
    				  * clsList.get(0).getClass()表示要导出的实体类 
    				  * /
    				Sheet sheet=new Sheet(1,0,clsList.get(0).getClass());
    				
    				sheet.setSheetName("导出班级测试");
    				writer.write(clsList, sheet);
    			}
    			writer.finish();
    			
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    	}
    }
    
    

    测试类:

    package exportExcel;
    
    import java.util.ArrayList;
    import java.util.List;
    
    public class ExportTest {
    	public static void main(String[] args) {
    		//准备数据
    		List<ClsModal> clsList=new ArrayList<ClsModal>();
    		for(int i=0;i<3;i++) {
    			ClsModal cls=new ClsModal();
    			cls.setCid(i);
    			cls.setCname("java"+i);
    			clsList.add(cls);
    		}
    		
    		new ExportExcel().export(clsList);
    	}
    }
    
    

    测试结果:
    在这里插入图片描述
    如果是前后端分离,则只需要使用HttpServletResponse获得OutputStream流,然后再形成excel表,将其写入到输出流中,然后响应给前端即可。但注意要将响应的头设置成“Content-Disposition”。

    展开全文
  • java easyexcel 导出 excel

    2020-10-31 14:45:49
    java easyexcel 导出 excel 1 简介 EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel。 2 环境 springboot + idea 3 引入pom文件 <dependency> <...

    java easyexcel 导出 excel

    1 简介

    EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel。

    2 环境

    springboot + idea

    3 引入pom文件

    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>easyexcel</artifactId>
        <version>1.1.2-beta5</version>
        </dependency>
    

    4 编写导出表头的实体类

    以下为示例,只列出几个字段

    @Data
    public class ExportWorkVO extends BaseRowModel implements Serializable {
        private static final long serialVersionUID = 6996247021451842024L;
        @ExcelProperty(value = "工单编号", index = 0)
        private String workId;
        @ExcelProperty(value = "工单状态", index = 1)
        private String workStatusName;
        @ExcelProperty(value = "工单类型", index = 2)
        private String workTypeName;
    }
    

    5 编写 ExcelUtil 工具类

    package com.ctfojt.auditquery.common;
    
    import com.alibaba.excel.ExcelWriter;
    import com.alibaba.excel.metadata.BaseRowModel;
    import com.alibaba.excel.metadata.Sheet;
    import com.alibaba.excel.support.ExcelTypeEnum;
    
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    import java.io.OutputStream;
    import java.net.URLEncoder;
    import java.util.List;
    
    public class ExcelUtil {
        /**
         * 导出 Excel :一个 sheet,带表头.
         *
         * @param response  HttpServletResponse
         * @param list      数据 list,每个元素为一个 BaseRowModel
         * @param fileName  导出的文件名
         * @param sheetName 导入文件的 sheet 名
         * @param model     映射实体类,Excel 模型
         * @throws Exception 异常
         */
        public static void writeExcel(HttpServletResponse response, List<? extends BaseRowModel> list, String fileName, String sheetName, BaseRowModel model) throws Exception {
            ExcelWriter writer = new ExcelWriter(getOutputStream(fileName, response), ExcelTypeEnum.XLSX);
            Sheet sheet = new Sheet(1, 0, model.getClass());
            sheet.setSheetName(sheetName);
            writer.write(list, sheet);
            writer.finish();
        }
    
        /**
         * 导出文件时为Writer生成OutputStream.
         *
         * @param fileName 文件名
         * @param response response
         * @return ""
         */
        private static OutputStream getOutputStream(String fileName, HttpServletResponse response) throws Exception {
            try {
                fileName = URLEncoder.encode(fileName, "utf8");
                response.setContentType("application/vnd.ms-excel");
                response.setCharacterEncoding("utf8");
                response.setHeader("Content-Disposition", "attachment; filename=" + fileName + ".xlsx");
                response.setHeader("Pragma", "public");
                response.setHeader("Cache-Control", "no-store");
                response.addHeader("Cache-Control", "max-age=0");
                return response.getOutputStream();
            } catch (IOException e) {
                throw new Exception("导出excel表格失败!", e);
            }
        }
    }
    
    

    5 业务类代码实现

    //查出所需要导出的数据
    List<ExportWorkVO> exportList =  checkWorkOrderService.converseListToWriteModel(list);
    String time = DateFormatUtils.format(new Date(), "yyyyMMddHHmmss");
    String fileName = "工单列表_" + time;
    String sheetName = "sheet1";
    ExcelUtil.writeExcel(response, exportList, fileName, sheetName, new ExportWorkVO());
    

    注:exportList为需要导出的数据,和ExportWorkVO实体类对应上即可!

    展开全文
  • easyExcel 导出 excel 自定义表头 效果图: 代码: @RequestMapping(value = "export",method = RequestMethod.GET) public void export(HttpServletResponse response,Integer yds,Integer sds,String type) throws...
  • EasyExcel 导出 Excel

    2021-07-12 17:33:29
    1. 依赖 <dependency> <groupId>com.alibaba</groupId>...easyexcel</artifactId> <version>2.1.2</version> </dependency> 2.建立导出对应实体类 ...
  • easyExcel导出excel的简单使用 Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有...
  • 使用EasyExcel导出Excel

    2017-09-29 09:52:28
    Excel EasyExcel 导出
  • 1.easyexcel导出图片简单操作参考官网 2.项目中遇到的问题:项目导出报表需要导出图片 easyexcel导出图片,数据库中的存储的图片是字符串类型(实际上还是图片的URL链接),需要先转为URL,再进行导出操作. 图片字段...
  • swagger easyExcel导出Excel文件打不开,文件损坏 文件下载打不开,将文件输出到本地发现可以打开,而且swagger下载的文件大小比本地文件大(文件大小不等) 所以easyExcel输出文件没有问题 swagger修改 解决...
  • POI封装工具easyexcel导出EXCEL表样式设置 java中对Office操作比较好的工具是POI,但POI在导出数据量较大的情况下很容易因内存占用过大,而出错,阿里巴巴推出的easyexcel号称解决这一问题,几十MB的文件内存占用仅...
  • 通过easyexcel导出excel

    2019-10-31 15:44:04
    1.设置导出excel的model package net.tartan.pds.pojo.excel.standard; import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.metadata.BaseRowModel; import lombok.Data; import ...
  • easyexcel导出excel,大数据量100万以内分页查询zip格式导出准备工作整体思路controller层service层mapper层VO表结构测试备注easyExcel 准备工作 maven+springboot+mybatis pom添加. // maven依赖 <dependency>...
  • easyexcel 概述 采用极简设计的 Excel 生成和读取工具,几行代码即可把 List 集合生成为 Excel 或者从 Excel 读取为 List 集合。 使用 Maven <dependency> <groupId>com.gaoice</groupId> <...
  • .registerWriteHandler(commonEasyExcelStyle).excelType(ExcelTypeEnum.XLS) .registerWriteEndHandler(new TenancyManageMentMergeHandler()) .sheet(false?"":"租期管理").doWrite(tenancyManagementInfos); ...
  • 使用Groovy 动态编译生成class文件,再结合 easyexcel 导出excel 前提 ​ easyexcel 的使用必须要有实体类,然后根据实体类上的注解@ExcelProperty 实现,根据字段导出数据到excel中 缺点 ​ 必须要具有一个entity....
  • 使用easyexcel导出excel文件

    万次阅读 热门讨论 2019-01-31 04:17:21
    这里是导出一个excel文件,里面有两个sheet 分别是税赋预测表和发票汇总表 controller层 @requestMapping(value = &amp;quot;/exportExcel/taxForecast&amp;quot;, method = Method.GET) public Result&...
  • EasyExcel导出excel简单实现(单sheet页和多sheet页) 新手一枚,最近在做关于excel的导出,所以就记录下来,还望大家多多指教 ^-^ ! 所用导出工具: EasyExcel 导入的依赖: <dependency> <groupId>...
  • easyexcel导出Excel表格

    千次阅读 2019-07-20 18:43:13
    easyexcel相比较poi不是一套成熟的框架,但是开发快捷方便,不耗内存,速度快,是alibaba的开源框架,用起来十分简单: 整个excel表是一个workbook,下面有多个sheet,一个sheet有多行row,一行有多个cell 效果 第...
  • 背景:easyexcel导出excel模板时,标题带下拉框及其下拉值过多不显示问题。 使用的easyexcel版本: <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId&...
  • Web中的EasyExcel导出Excel(不创建对象且自定义合并单元格策略) 适用于多张表(只查单表数据就用创建对象那种方法) Controller @RequestMapping(value = "/downloadPlanList", method = RequestMethod.GET) @...
  • 创建一个与你要导出excel格式对应的实体类,然后利用easyExcel将数据写出即可 前端 controller层 @ApiOperation("导出数据字典") @GetMapping("/exportData") public void exportData(HttpServletResponse ...
  • alibaba easyexcel导出excel

    2021-01-18 10:54:29
    参考地址 1.同一个对象写到同一个sheet ExcelWriter excelWriter = null; String fileName = TestFileUtil.getPath() + "repeatedWrite" + ... excelWriter = EasyExcel.write(fileName, DemoData.class).build();
  • 简介:在日常导出excel时导出日期格式一般都是将日期转换成yyyy-MM-dd格式的字符串,很少有情况需要关注单元格格式,但是在特殊需求下,我们仍然需要注意单元格格式。 1.正常导出EXCEL public class ...
  • @ApiOperation(value = "导出Excel") public ResponseData exportExcel(HttpServletRequest request, HttpServletResponse response) throws IOException { applyRecordService.exportExce..
  • 1:在pom.xml 引入jar包: <!-- https://mvnrepository.com/artifact/com.alibaba/easyexcel --> <dependency>...easyexcel</artifactId> <version>${easyexcel.vsersion}</v
  • *导出excel 用过layui的都看的懂 */ function exports() { layer.confirm('确定导出所有策略的信息?', { btn: ['确定', '取消'] }, function(index){ //按钮【按钮一】的回调 location.href=prefix +...
  • 我们直奔主题:阿里easyexcel导出Excel文件的优雅性有哪些具体表现? 准备工作之引入Jar依赖: Gradle: // https://mvnrepository.com/artifact/com.alibaba/easyexcel compile group: 'com.alibaba', name: '...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,976
精华内容 1,590
关键字:

easyexcel导出excel