1、在 response(HttpServletResponse类型)设置返回的类型:

res.setContentType("application/x-download");
res.setHeader(
       "Content-disposition",
       "attachment;filename="
               + fileName);//其中 fileName 是个变量值

2、获取 输出流

OutputStream outs=res.getOutputStream();

3、获取Excel文件数据流源

//writeList2Excel方法接收一个map的list集合,可将map的key值作为表列名,value值作为表格的值生成Excel,具体方法见下实现类

HSSFWorkbook excel=DataReadedInExcel.writeList2Excel(list);

4、输出Excel的数据流

excel.write(outs);

参考类:

public class DataReadedInExcel {

public static HSSFWorkbook writeList2Excel(List list){
//创建操作Excel的HSSFWorkbook对象
HSSFWorkbook excel= new HSSFWorkbook();
//Excel中的一个sheet(工作表)对应着java中的一个HSSFSheet对象,利用HSSFWorkbook对象可以创建一个HSSFSheet对象
HSSFSheet sheet = excel.createSheet("sheet1");
//给表格添加表头
createFirstRow(sheet.createRow(0),(Map)list.get(0));
//给表格添加内容
createContextRow(sheet,list);

return excel;
}
public static void createFirstRow(HSSFRow firstRow,Map firstCellNames){
Set keys=firstCellNames.keySet();
Iterator it=keys.iterator();
int i=0;
while(it.hasNext()){
Object obj=it.next();
if(obj instanceof String)
firstRow.createCell(i).setCellValue((String)obj);
else if (obj instanceof BigDecimal)
firstRow.createCell(i).setCellValue(((BigDecimal)obj).intValue());
else if (obj==null)
firstRow.createCell(i).setCellValue("null");
else 
firstRow.createCell(i).setCellValue("");
i++;
}
}
public static void createContextRow(HSSFSheet sheet,List list){
for(int i=0;i<list.size();i++){
HSSFRow row=sheet.createRow(i+1);
Map map=(Map)list.get(i);
Collection collection=map.values();
Iterator it = collection.iterator();
int j=0;
while(it.hasNext()){
Object obj=it.next();
if(obj instanceof String)
row.createCell(j).setCellValue((String)obj);
else if (obj instanceof BigDecimal)
row.createCell(j).setCellValue(((BigDecimal)obj).intValue());
else if (obj==null)
row.createCell(j).setCellValue("null");
else 
row.createCell(j).setCellValue("");
j++;
}
}
}

}

jar包依赖配置:

<!-- Excel的读写 -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.5-FINAL</version>
</dependency>

java web下载 Excel文件相关推荐

  1. 阿里开源(EasyExcel):使用Java将数据导出为Excel表格、带样式----》java web下载 Excel文件

    目录 一.技术选型 二.实现过程 1.导入依赖 2.编写工具类 EasyExcelUtil 3.公用参数类 EasyExcelParams 4.表格样式实体类 MyWriteHandler 5.数据实 ...

  2. Java Web下载Excel模板

    在java web项目中常常会遇到下载本地模板的要求,这里以下载Excel模板为例进行说明. 一.首先要在自己的项目下存放一个Excel文件,如图: 这个文件的存放位置不是固定的,我们可以通过获取真实 ...

  3. java web下载zip文件_Java Web之下载文件

    下载的文件,不能随便的被访问,放在外面的文件夹肯定不行,url一敲就能访问了,所以我们要放在WEB-INF文件夹里面,WEB-INF文件夹只有Servlet才能访问,我们新建一个文件夹,叫downlo ...

  4. Java web导出excel文件 - poi

    Javaweb项目加入导出excel功能只需要2个步骤: 1.在需要的controller里面加入下面接口代码: /*** excel导出controller层代码** @param params* ...

  5. java实现下载excel文件

    List<EmailRecordVO> ers = queryEmailRecordList(query);SimpleDateFormat sdf = new SimpleDateFor ...

  6. java ssh 下载excel,SSH整合WEB导出EXCEL案例

    基于Spring,Struts2,Hibernate整合, jsp页面导出(下载)excel文件的简单应用 1)本例不采用Java任何导出excel文件常用的poi或者jxl 等第三方jar包,仅仅基 ...

  7. react接收后端文件_React获取Java后台文件流并下载Excel文件流程解析

    记录使用blob对象接收java后台文件流并下载为xlsx格式的详细过程,关键部分代码如下. 首先在java后台中设置response中的参数: public void exportExcel(Htt ...

  8. java文件流下载excel_React获取Java后台文件流下载Excel文件

    记录使用blob对象接收java后台文件流并下载为xlsx格式的详细过程,关键部分代码如下. 首先在java后台中设置response中的参数: public void exportExcel(Htt ...

  9. java使用jxl生成excel表格,jsp使用js下载excel文件xls

    java使用jxl生成excel表格,jsp使用js下载excel文件 后端代码 maven jar包 主体代码逻辑 引入的jar包 具体代码段 重点详解 表头和表格内容两种格式 直接将 HttpSe ...

最新文章

  1. 一条推文卖出 290 万美元天价?网友:我竟是隐藏的富翁
  2. Kotlin学习笔记(2)- 空安全
  3. jquery.cookie.js 使用小结
  4. 初一模拟赛总结(3.30)
  5. mybaties总结+hibernate总结
  6. jenkins Auth fail验证失败
  7. Android4开发入门经典 之 第七部分:数据存储
  8. VBA 读写文本文件的几种方法
  9. python发红包实现
  10. Django:静态文件staticfiles
  11. ios 给网页传值_iOS开发—页面传值汇总
  12. 玩转华为数据中心交换机系列 | 配置基于VLAN的MAC地址学习限制示例
  13. 电力电子,电机控制系统的建模与仿真
  14. 模电数电高频电路综合实验成套设备QY-MS535G
  15. 任正非宣布华为成立“煤炭军团”,进军煤矿业
  16. 怎样做具有视觉冲击感的非主流照片
  17. matlab p文件转码 matlab pcode文件 将matlab中的p文件转为m文件工具
  18. UOS系统下安装软件打不开的解决方法
  19. Excel如何实现两个工作表数据的对比
  20. esp8266网络自动对时 串口字符连接 病显示 12864i2c u8g2库

热门文章

  1. 蚌埠学院计算机系怎样,蚌埠学院专业排名及介绍 哪些专业最好
  2. Google、迅雷与李开复、周鸿祎的那点破事
  3. 【渝粤题库】广东开放大学 形成性考核 - 副本 (13)
  4. Python+Vue计算机毕业设计包头市大学生家教信息中介平台aizx2(源码+程序+LW+部署)
  5. 画直方图和函数密度曲线的几种方法
  6. 《JavaScript前端开发案例教程》------第8章事件课后练习
  7. 转正 自我鉴定 模板
  8. 基于云计算的软件工程质量- 讨论中ing
  9. NUC“小钢炮”现身ChinaJoy:英特尔为了游戏有多拼?
  10. 知识管理在商业模式创新中的重要性