Java poi 导出Excel并下载到客户端,具体内容如下

Maven配置,包含了其他文件格式的依赖,就全贴出来了

org.apache.poi

poi-excelant

3.12

org.apache.poi

poi-scratchpad

3.12

org.apache.poi

poi-ooxml

3.8

org.apache.poi

poi-ooxml-schemas

3.8

Service层

@Override

public void export(Long sblsh, String excelName, OutputStream out) {

try {

// 第一步,创建一个webbook,对应一个Excel文件

HSSFWorkbook wb = new HSSFWorkbook();

//生成一个表格

HSSFSheet sheet = wb.createSheet(excelName);

// 第三步,在sheet中添加表头第0行

HSSFRow row = sheet.createRow(0);

// 第四步,创建单元格,并设置值表头 设置表头居中

HSSFCellStyle style = wb.createCellStyle();

style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式

HSSFCell cell = row.createCell(0);

cell.setCellStyle(style);

Byte kjzz = qyjbxxMapper.getKjzz(sblsh);

List record = this.selectBySblsh(sblsh);

this.insertData(wb, sheet, row, record, out);

}

} catch (Exception e) {

logger.info(e.getMessage());

}

}

/**

* 导入数据到表格中

* @param wb execl文件

* @param sheet 表格

* @param row 表格行

* @param record 要导出的数据

* @param out 输出流

*/

private void insertData(HSSFWorkbook wb,HSSFSheet sheet,HSSFRow row,List record,

OutputStream out){

try {

row = sheet.createRow(1);

for(int i=0;i

row.createCell(i).setCellValue(title[i]);

}

for(int i=0;i

row = sheet.createRow(i+2);

A data = record.get(i);

row.createCell(0).setCellValue(data.getHc());

row.createCell(1).setCellValue(data.getXm());

BigDecimal je = data.getJe();

if(je!=null){

row.createCell(2).setCellValue(je.doubleValue());

}

}

//合并单元格,前面2位代表开头结尾行,后面2位代表开头结尾列

CellRangeAddress region = new CellRangeAddress(0,0,0,title.length-1);

sheet.addMergedRegion(region);

wb.write(out);

out.flush();

out.close();

wb.close();

} catch (Exception e) {

logger.info(e.getMessage());

}

}

Controller

@RequestMapping("/export")

public void export(Long sblsh, HttpServletRequest request, HttpServletResponse response){

response.setContentType("octets/stream");

String excelName = "文件名";

try {

response.addHeader("Content-Disposition", "attachment;filename="+new String(excelName.getBytes("gb2312"), "ISO8859-1" )+".xls");

OutputStream out = response.getOutputStream();

aService.export(sblsh,excelName ,out);

} catch (Exception e) {

e.printStackTrace();

}

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持聚米学院。

java导出excel 客户端_Java poi导出Excel下载到客户端相关推荐

  1. java poi excel 图表_java poi导出带图表的excel表格

    1 /** 2 *导出综合得分统计3 *@paramfileName4 *@paramrequest5 *@paramresponse6 *@paramheadInfo7 *@paramdataLis ...

  2. java 导出批量图片_Java Poi 导出excel(含图片及多个sheet)

    因为之前做的导出都是导出数据的基本信息不含图片的那种,一直也没做过导出图片的excel,正好这两天做这个需求就做了一个,好 废话不多说,直接上图 ,因为我这边是根据模板导出数据 先看下模板 然后上代码 ...

  3. java poi生成excel文件_java poi 导出Excel文件

    1,导包  poi-3.9-XXX.JAR 2, 创建一个实体对象 public class Student implements Serializable { /** * */ private st ...

  4. java对excel加密_java poi对Excel文件加密

    @SuppressWarnings("deprecation") @Override public InputStream exportItemProjectExcel(List ...

  5. java excel 多列排序_java poi处理excel多sheet并实现排序

    需求:有一个数据字典全量汇总表,其中第一个sheet为目录,包括编号和表名,第二个以后为表的明细.其中sheet名就是表名但无序,sheet内字段序号无序有空行 现在要求将其中101,104,107, ...

  6. java word 题目导入_Java导入导出Excel和Word

    目的 实现Excel/Word导入导出,分以下步骤 导入 上传文件 解析Excel/Word里面的内容 导出 生成Excel/Word文件 文件下载 如何实现 上传文件----------Common ...

  7. java实现导出excel表_java实现导出网页中的表格为Excel

    将网页中的table数据,导出到excel表格,可以使用java POI实现. java poi是java中操作excel的工具,支持excel的导入与导出,一般有三种形式: 1.HSSFWorkbo ...

  8. java excel 模板 替换_JAVA POI替换EXCEL模板中自定义标签(XLSX版本)满足替换多个SHEET中自定义标签...

    个人说明:为了简单实现导出数据较少的EXCEL(根据自定义书签模板) 一.替换Excel表格标签方法 ``` /** * 替换Excel模板文件内容 * @param map * 需要替换的标签建筑队 ...

  9. java poi excel 导入数据库_java POI 处理excel表格数据并导入数据库示例

    java操作Excel最常用的开源组件有poi与jxl.jxl是韩国人开发的,发行较早,但是更新的很慢,目前似乎还不支持excel2007. poi是apache下的一个子项目,poi应该是处理ms的 ...

最新文章

  1. 一段关于低价的对话(被低价困扰的安利伙伴进!)
  2. QT在windows平台安装使用MInGW编译
  3. 30. SQL -- 完整性及约束(1)
  4. flip java_java的flip(). 这里用flip()有什么作用?这是反转缓冲区的方法,好像用不上。...
  5. dataframe 添加一行_R语言Data Frame数据框常用操作
  6. python tclerror_TclError:错误的窗口路径名(Python)
  7. FreeEIM 与飞鸽传书的区别
  8. Spring+hibernate+JSP实现Piano的数据库操作---1.目录结构+展示
  9. 2022年电工杯数模竞赛B题第一问解法分享(附Python代码)
  10. 时间复杂度为O(n)的排序(JAVA)
  11. Wake On Lan 网络唤醒 远程开机功能设置教程
  12. 你还不明白如何解决分布式Session?看这篇就够了!
  13. windows +caffe+python2.7或者python3.5编译 。
  14. 【企查查】高级查询下突破导出5000条/10次限制思路tips,完整全量导出
  15. STM32F030C8T6单片机与GY-61 ADXL335模块——角度传感器
  16. 爬虫:爬取以太坊区块链浏览器数据
  17. 0基础学python培训班_[长文] 学Python不用培训班,一篇文章带你入门
  18. gstreamer之G_DEFINE_TYPE
  19. python爬虫开发微课版pdf_Python爬虫开发实战教程(微课版)
  20. 《科学工程技术、技术到学术的升级演变》

热门文章

  1. TypeError: Unexpected keyword argument passed to optimizer: learning_rate解决方法
  2. 多人姿态识别框架——AlphaPose
  3. centos7.0查看IP
  4. Bootstrap3代码模板
  5. linux判断值相等_Shell字符串比较相等、不相等方法小结【转】
  6. python读取csv时keyerror_python – 读取csv文件并传输到数组的KeyError
  7. java response 状态码_response(向客户端写入数据、对相应进行设置(状态码、响应头))...
  8. elastichd的使用教程_ElasticSearch可视化工具ElasticHD安装
  9. 拟牛顿法matlab程序_牛顿环实验的数据处理改进及图像分析
  10. hadoop设置用户权限_No.9 MySQL之用户管理与权限设置