导出Excel工具类

导出Excel的工具方法,主要是生成excel文件:

    public static void writeFailureReasonToExcelFile(List<FailureReasonResponseEntity> queryAllFailureReasonCountList,String path){
        try {
            //创建一个工作簿 excel文件
            XSSFWorkbook workbook = new XSSFWorkbook();
            //创建一个标签页
            XSSFSheet sheet = workbook.createSheet("失败原因查询数据");
            //创建标题行
            XSSFRow xSSFRow = sheet.createRow(0);
            xSSFRow.createCell(0).setCellValue("波束号");
            xSSFRow.createCell(1).setCellValue("单位");
            xSSFRow.createCell(2).setCellValue("主叫号码");
            xSSFRow.createCell(3).setCellValue("被叫号码");
            xSSFRow.createCell(4).setCellValue("失败原因");
            //将数据写入Excel表格中
            for (FailureReasonResponseEntity failureReasonResponseEntity : queryAllFailureReasonCountList) {
                XSSFRow dataRow = sheet.createRow(sheet.getLastRowNum()+1);
                dataRow.createCell(0).setCellValue(failureReasonResponseEntity.getBeamId());
                dataRow.createCell(1).setCellValue(failureReasonResponseEntity.getLevelUnit());
                dataRow.createCell(2).setCellValue(failureReasonResponseEntity.getCallerResponseNumber());
                dataRow.createCell(3).setCellValue(failureReasonResponseEntity.getCalleeResponseNumber());
                dataRow.createCell(4).setCellValue(failureReasonResponseEntity.getReasonResponseValue());
            }
            FileOutputStream os = new FileOutputStream(path);
            workbook.write(os);

            //关闭流
            os.close();
            workbook.close();
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

controller层的处理方法:

    @RequestMapping("/getOptionQueryData")
    @RequiresPermissions("sys:failureReason:getOptionQueryData")
    public void getOptionQueryData(HttpServletResponse response) throws Exception {
        if(queryAllFailureReasonCountList.size()!=0){
            //将查询出来的数据写到Excel文件中
            //输出流进行文件下载
            String fileName = "FailureReasonCount_"+sdf.format(new Date())+".xlsx";
            File file = new File(fileName);
            //将数据写入Excel中
            ExcelUtils.writeFailureReasonToExcelFile(queryAllFailureReasonCountList,fileName);
            // 以流的形式下载文件。
            FileInputStream fileInputStream = new FileInputStream(file);
            String encodedfileName = new String(fileName.getBytes(), "UTF-8");
            response.setHeader("Content-Disposition", "attachment; filename=\"" + encodedfileName + "\"");
            IOUtils.copy(fileInputStream, response.getOutputStream());
            fileInputStream.close();
        }
    }

通过上面的代码就能实现导出到excel文件中

原文地址:https://www.cnblogs.com/OneStriver/p/9442322.html

时间: 2024-10-06 07:15:06

导出Excel工具类的相关文章

javaEE开发之导出excel工具类

web开发中,一个系统的普通需求也包含导出excel,一般採用POI做统计报表导出excel. 导出excel工具类: import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; import java.util.List; import java.util.Map; import org.apache.poi.hssf.usermodel.HSSFCell; import o

Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类

Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类 ============================== ?Copyright 蕃薯耀 2017年9月13日 http://www.cnblogs.com/fanshuyao/ 直接上代码: import java.io.IOException; import java.lang.reflect.InvocationTargetException; import java.lang.ref

web开发之导出excel工具类

web开发中,一个系统的普通需求也包括导出excel,一般采用POI做统计报表导出excel. 导出excel工具类: import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; import java.util.List; import java.util.Map; import org.apache.poi.hssf.usermodel.HSSFCell; import o

导出Excel工具类(一个主表多个明细表)

①ExcelData.java(Excel数据封装类) package com.kentra.util; import java.util.List; import java.util.Map; /**  *   * 描述:为导出Excel文件封装数据  * 封装Excel文件数据注意事项:  * 1.heads(标题行):是一个字符串, 标题与标题之间以逗号分隔如:hears="学号,姓名,性别"  * 2.data: 表示:主数据集合,data是个字符串集合,包含了所有主数据,集合

JXL导出Excel工具类

将Excel中的数据读取到List<Map<String, Object>>集合中 package com.mvc.util; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.lang.reflect.Field;

配置简单功能强大的excel工具类搞定excel导入导出工具类(一)

对于J2EE项目导入导出Excel是最普通和实用功能,本工具类使用步骤简单,功能强大,只需要对实体类进行简单的注解就能实现导入导出功能,导入导出操作的都是实体对象. 请看一下这个类都有哪些功能:????? 1.实体属性配置了注解就能导出到excel中,每个属性都对应一列.????? 2.列名称可以通过注解配置.????? 3.导出到哪一列可以通过注解配置.????? 4.鼠标移动到该列时提示信息可以通过注解配置.????? 5.用注解设置只能下拉选择不能随意填写功能.???? ? 6.用注解设置

java poi导出excel 工具

基本上每个系统或多或少都有一些导出功能,我之前做的系统是针对每个功能定制一个导出,而且我看网上的也大多是这么做的,这样就存在一个代码冗余的问题,而且增加工作量,今天整理了一下,系统中所有的导出都可以引用(注意我这里说的是excel,word的暂时还没整理),并且支持导出图片,上代码. 1. jar包准备 如果你是新手请参考 https://blog.csdn.net/fulishafulisha/article/details/80152805 ,如果使用的maven <dependency>

导出Excel帮助类

using System; using System.Collections.Generic; using System.Text; using System.Data; using System.Data.OleDb; using System.Web; using System.Web.UI; namespace AIMSCommon { /// <summary> /// 导出Excel帮助类 /// </summary> public class ExcelHelper {

MVC NPOI Linq导出Excel通用类

之前写了一个模型导出Excel通用类,但是在实际应用中,可能不是直接导出模型,而是通过Linq查询后获取到最终结果再导出 通用类: public enum DataTypeEnum { Int = 0, Float = 1, Double = 2, String = 3, DateTime = 4, Date = 5 } public class ExportFieldInfo { /// <summary> /// 字段名,用于反射获取值 /// </summary> publi