public String exportExcelList(){
//创建webbook,对应一个excel文件
HSSFWorkbook wb = new HSSFWorkbook();
//在webbook中添加一个sheet,对应excel中的sheet
HSSFSheet sheet = wb.createSheet("检查单");
//在sheet中添加表头,添加一行
HSSFRow row = sheet.createRow(0);
//设置每一列的宽,此处可根据实际情况设置.
sheet.setColumnWidth(1, 20*256);
sheet.setColumnWidth(6, 20*256);
sheet.setColumnWidth(7, 20*256);
sheet.setColumnWidth(8, 20*256);
sheet.setColumnWidth(11, 20*256);
sheet.setColumnWidth(12, 20*256);
sheet.setColumnWidth(13, 20*256);
//设置表格样式
HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_LEFT);//内容向左靠齐
Font font = wb.createFont();//为字体设计样式
font.setFontHeightInPoints((short)12); //字体大小
font.setFontName("宋体");
style.setFont(font);//将字体加入到表格样式中
//设置列名称(第一列)
HSSFCell cell = row.createCell(0);
cell.setCellValue("id");//列名称
cell.setCellStyle(style);//列样式
//第二列
cell = row.createCell(1);
cell.setCellValue("syncDate");
cell.setCellStyle(style);
.........
//查出你要的数据
List laboratoryList = laboratoryInformationService.getInformationByTime(timeHelper);
//遍历数据
for(int i=0;i<laboratoryList.size();i++){
//创建行
row = sheet.createRow(i+1);
Map<String,Object> laboratoryMap = new HashMap<String,Object>();//临时变量
laboratoryMap = (Map<String, Object>) laboratoryList.get(i);
//给每一行设置单元格
//第一列
cell = row.createCell(0);//列索引
cell.setCellValue(laboratoryMap.get("id").toString());//单元格内容
cell.setCellStyle(style);//列的样式
//第二列
cell = row.createCell(1);
cell.setCellValue(laboratoryMap.get("syncDate").toString());
cell.setCellStyle(style);
............
}
//将excel的数据写入文件
HttpServletResponse res = ServletActionContext.getResponse();
res.setContentType("octets/stream");
String excelName = "检查单";//文件名字
//转码防止乱码
try {
res.addHeader("Content-Disposition", "attachment;filename="+new String( excelName.getBytes("gb2312"), "ISO8859-1" )+".xls");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
OutputStream os;
try {
os = res.getOutputStream();
wb.write(os);
os.flush();
os.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace(); }
System.out.println("excel导出成功");
return null;//此处一定要为null否则报错
}

HSSFWorkbook 导出excel java的更多相关文章

  1. 导出excel java实现

    1.前台页面代码: <tr> <td><input dataId="excel" type="button" value=&quo ...

  2. poi 导出Excel java代码

    js: function initBatchExport(url,sub_key,current_sub_num){ var btn_id="#btn_char"+current_ ...

  3. 复杂的POI导出Excel表格(多行表头、合并单元格)

    poi导出excel有两种方式: 第一种:从无到有的创建整个excel,通过HSSFWorkbook,HSSFSheet HSSFCell, 等对象一步一步的创建出工作簿,sheet,和单元格,并添加 ...

  4. Java导出excel

    一.介绍 常常有客户这样子要求:你要把我们的报表直接用Excel打开(电信系统.银行系统).或者是:我们已经习惯用Excel打印.这样在我们实际的开发中,很多时候需要实现导入.导出Excel的应用. ...

  5. [转]Java中导入、导出Excel

    原文地址:http://blog.csdn.net/jerehedu/article/details/45195359 一.介绍 当前B/S模式已成为应用开发的主流,而在企业办公系统中,常常有客户这样 ...

  6. Java POI导入导出Excel

    1.异常java.lang.NoClassDefFoundError: org/apache/poi/UnsupportedFileFormatException 解决方法: 使用的poi的相关jar ...

  7. java:POI导出excel

    POI是一个开源项目,专用于java平台上操作MS OFFICE,企业应用开发中可用它方便导出Excel. 下面是使用示例: 1.maven中先添加依赖项 <dependency> < ...

  8. Java利用POI导入导出Excel中的数据

         首先谈一下今天发生的一件开心的事,本着一颗android的心我被分配到了PB组,身在曹营心在汉啊!好吧,今天要记录和分享的是Java利用POI导入导出Excel中的数据.下面POI包的下载地 ...

  9. .Net MVC 导入导出Excel总结(三种导出Excel方法,一种导入Excel方法) 通过MVC控制器导出导入Excel文件(可用于java SSH架构)

    .Net MVC  导入导出Excel总结(三种导出Excel方法,一种导入Excel方法) [原文地址] 通过MVC控制器导出导入Excel文件(可用于java SSH架构)   public cl ...

随机推荐

  1. 【视频】Entity Framework Core 2.* 入门教程

    视频专辑在B站上:https://www.bilibili.com/video/av34462368/ 内容暂时如下,还在更新中: 1. 简介 & 创建Model,生成数据库 2. 在ASP. ...

  2. height:auto 火狐没边框

    css高度设置为auto后,设置的边框 ie正常 火狐 就没有边框了,解决方法 之前是这样写的 #right_bottom { width: 790px; height:auto; border: # ...

  3. java~接口的共享实体使用Map后更灵活

    微服务时代的实体设计 在一个微服务时代,一个实体参数或者返回值,它可能是多服务之前共享的,而这个重复的实体你需要拷贝多份,这是违背DRP原则的,所以我们需要找一种更友好的方式来代替它,它就是Map,我 ...

  4. 小议 localStorage

    前言 什么是 localStorage? 在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条co ...

  5. Python:游戏:扫雷(附源码)

    这次我们基于 pygame 来做一个扫雷,上次有园友问我代码的 python 版本,我说明一下,我所有的代码都是基于 python 3.6 的. 先看截图,仿照 XP 上的扫雷做的,感觉 XP 上的样 ...

  6. Eclipse目录实解

    从左1图中可以看到,其中的src/main/java存放java文件,src/main/resources存放项目用到的资源(js,css,图片,文件等).下面的两个文件夹是用来存放测试文件和资源的( ...

  7. 学习笔记—MySQL基础

    数据库的介绍 mysql数据库介绍 开放源码的轻量级关系型数据库管理系统,体积小.速度快.操作便捷. 数据库的启动和连接 mysql数据库启动 在终端输入以下命令,启动mysql服务器 service ...

  8. jsp内置对象-page对象

    page对象代表jsp本身,只有在jsp页面才有效.page对象本质上是被转换后的Servlet,因此它可以调用任何被Servlet类所定义的方法. 项目ch05案例:创建HttpJSPPage类的对 ...

  9. Windows环境npm无法生效

    上网查询得知安装完nodejs之后配置windows环境变量只能保证在命令行工具中可以使用npm,如果想在git bash中使用需要再安装一遍 安装后记得配置环境变量

  10. 【设计模式】建造者模式 Builder Pattern

    前面学习了简单工厂模式,工厂方法模式以及抽象工厂模式,这些都是创建类的对象所使用的一些常用的方法和套路, 那么如果我们创建一个很复杂的对象可上面的三种方法都不太适合,那么“专业的事交给专业人去做”,2 ...