1、POI 导出 Excel
public static void exportUserExcel(String[] headers, List<Muser> userList, OutputStream out) { HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb.createSheet("会员表"); HSSFRow row = sheet.createRow(0); HSSFCellStyle style = wb.createCellStyle(); style.setAlignment(HSSFCellStyle.ALIGN_CENTER); for (int i = 0; i < headers.length; i++) { HSSFCell cell = row.createCell(i); cell.setCellStyle(style); HSSFRichTextString text = new HSSFRichTextString(headers[i]); cell.setCellValue(text); } for (int i = 0; i < userList.size(); i++) { Muser user = userList.get(i); row = sheet.createRow(i + 1); row.createCell(0).setCellValue(user.getId()); row.createCell(1).setCellValue(user.getName()); row.createCell(2).setCellValue(user.getPhone()); row.createCell(3).setCellValue(user.getIdCard()); row.createCell(4).setCellValue(user.getAge()); row.createCell(5).setCellValue(user.getAddress()); row.createCell(6).setCellValue(user.getBirthplace()); row.createCell(7).setCellValue(user.getCredits().toString()); row.createCell(8).setCellValue(user.getCreatedtimeString()); row.createCell(9).setCellValue(user.getLastlogtimeString()); row.createCell(10).setCellValue( user.getStatus().equals("0") ? "正常" : "黑名单"); } try { //FileOutputStream out = new FileOutputStream(path); wb.write(out); out.close(); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } }
2、JXL导出Excel
public static void expertHotelOrderExcel(List<HotelOrder> hotelOrderList){ try { HttpServletResponse response = ServletActionContext.getResponse(); response.setContentType("application/octet-stream;charset=UTF-8"); response.setHeader("Content-Disposition","attachment;filename="+Helper.getDate()+".xls"); // 注意这里的header参数为Content-Disposition而非第一种中的contentDisposition参数 // Excel获得文件 // 打开一个文件的副本,并且指定数据写回到原文件 WritableWorkbook book = Workbook.createWorkbook(response.getOutputStream()); // 添加一个工作表 WritableSheet sheet = book.createSheet("酒店订单表", 0); sheet.addCell(new Label(0, 0, "客栈名称")); sheet.addCell(new Label(1, 0, "订单编号")); sheet.addCell(new Label(2, 0, "会员编号")); sheet.addCell(new Label(3, 0, "总金额")); sheet.addCell(new Label(4, 0, "实付款")); sheet.addCell(new Label(5, 0, "获取积分")); sheet.addCell(new Label(6, 0, "使用积分")); sheet.addCell(new Label(7, 0, "交易状态")); sheet.addCell(new Label(8, 0, "审核状态")); sheet.addCell(new Label(9, 0, "成交时间")); if (hotelOrderList!= null) { IHotelManager hotelManager =SpringContextHolder.getBean("hotelManager",IHotelManager.class); for (int i = 0; i < hotelOrderList.size(); i++) { HotelOrder hotelOrder = hotelOrderList.get(i); String status = ""; if (hotelOrder.getOrderStatus() == 0) { status = "未支付"; } else if (hotelOrder.getOrderStatus() == 1) { status = "交易成功"; } else { status = "交易取消"; } String auditStatus = ""; if (hotelOrder.getAuditStatus().equals("0")) { auditStatus = "未审核"; } else { auditStatus = "已审核"; } sheet.addCell(new Label(0, i+1, hotelManager.getById(hotelOrder.getHotelId()).getHotelName())); sheet.addCell(new Label(1, i+1, hotelOrder.getId())); sheet.addCell(new Label(2, i+1, hotelOrder.getUserId())); sheet.addCell(new Label(3, i+1, hotelOrder.getOrderAmount().toString())); sheet.addCell(new Label(4, i+1, hotelOrder.getPayAmount().toString())); sheet.addCell(new Label(5, i+1, hotelOrder.getGetCredits().toString())); sheet.addCell(new Label(6, i+1, hotelOrder.getUsedCredits().toString())); sheet.addCell(new Label(7, i+1, status)); sheet.addCell(new Label(8, i+1, auditStatus)); if(hotelOrder.getDealTime()==null){ sheet.addCell(new Label(9, i+1, "暂无时间")); }else{ sheet.addCell(new Label(9, i+1, new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(hotelOrder.getDealTime()))); } } book.write(); book.close(); // 关闭输出流,同时也关闭response里的OutputStream,所以无需再调用response.getOutputStream().close()了 } } catch (Exception e) { e.printStackTrace(); } }
相关推荐
在Android平台上,处理Excel文件通常涉及使用第三方库,如Apache POI和JXL。这两个库都是Java编程语言的库,可以用于读写Microsoft Office格式的文件,包括Excel工作簿(.xls和.xlsx)。Apache POI是更为现代和功能...
在Java中,读取和操作Excel文件是常见的需求,这通常涉及到使用库,如Apache POI和JXL。这两个库都允许开发者在Java中方便地读取、写入和修改Excel文件。 Apache POI是一个强大的库,专门用于处理Microsoft Office...
Struts2是一个基于MVC(Model-View-...综上所述,结合Struts2、POI和JXL,我们可以构建出强大的数据导入导出功能,以及动态生成和下载Excel报表的Web应用。这对于数据驱动的业务来说,提供了极大的便利性和灵活性。
在给定的标题和描述中,"jsp+jspsmart上传+poi3.8读取excel2007+jxl读取excel2003" 提到了一种结合Java Web技术实现文件上传,并通过不同库解析Excel文件的解决方案。这里我们将详细探讨涉及的各个知识点。 首先,`...
本示例"(简单)JFinal实现Demo - 导出Excel 使用模板导出(POI + JXLS)"提供了一种高效的方法来生成复杂的Excel表格,无需通过编程逐个控制单元格样式。以下是对这个Demo的详细解释: 首先,JFinal是一个基于Java...
使用JXL导出Excel的步骤大致如下: 1. 引入JXL库。 2. 创建Workbook对象。 3. 创建Sheet对象。 4. 创建Cell对象并填充数据。 5. 保存到文件,调用Workbook的write方法。 `ExportExcelController.java`可能包含控制...
本篇文章将深入讲解如何使用POI库在Java中实现Excel的导出功能,以及涉及到的相关jar包及其作用。 首先,`poi-ooxml-schemas-3.15-beta1.jar`是POI库中的XML schema定义,用于解析和创建符合Office Open XML标准的...
在本项目中,"SpringBootMybatis+poi+Thymeleaf实现excel文件数据导入到数据库以及从数据库将数据导出成excel.zip",我们主要关注的是如何利用Java技术栈来处理Excel文件,并与数据库进行交互。以下是相关知识点的...
看到现在网上excel转pdf的代码很少,在csdn上找到一个还不能用,只能做简单的转换,只好自己写了一个,代码是一个maven工程,用eclipse创建,支持单元格合并等复杂的excel,同时能同步单元格样式到pdf中。...
本篇文章将详细介绍如何利用SpringBoot和MyBatis结合Apache POI实现Excel的导入导出功能。 首先,SpringBoot是一个基于Spring框架的轻量级开发工具,它简化了新Spring应用的初始搭建以及开发过程。SpringBoot通过...
以下是一个简化的示例,演示了如何使用POI导出Excel: ```java import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import java.io.FileOutputStream; import java.io....
本文将深入探讨两种常用的Java库:Apache POI和JXL,它们都提供了处理Excel文件的能力。 Apache POI是Apache软件基金会的一个开源项目,它提供了一个强大的API,允许Java开发者读取、写入和修改Microsoft Office...
在"struts2+jxl导出excel"的场景中,我们将讨论如何利用Struts2框架与JXL库配合,实现从web应用中导出数据到Excel的工作。 首先,我们需要理解Struts2的动作(Action)和结果(Result)。动作是处理用户请求的核心...
### POI与JXL实战性能对比分析 #### JXL与POI概述 在日常工作中,尤其是在处理Excel文件时,我们通常会面临选择合适的Java库来完成任务的问题。JXL和POI是两个广泛使用的库,它们各有优势和局限性。 **JXL...
以上就是关于使用JXL和Apache POI实现Excel导入导出的基本知识。根据实际需求,你可以结合这两个库的功能,灵活地处理各种Excel文件操作。在实际项目中,通常会根据性能、功能需求以及文件兼容性等因素选择适合的库...
POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI...
基于SpringBoot和POI实现单线程和多线程导出Excel.zip基于SpringBoot和POI实现单线程和多线程导出Excel.zip基于SpringBoot和POI实现单线程和多线程导出Excel.zip基于SpringBoot和POI实现单线程和多线程导出Excel.zip...
为了更好地理解这两个库的用法,你可以查看提供的"Excel导入导出(jxl及Poi)工具类"压缩包中的示例代码。通过阅读和运行这些代码,你可以更深入地了解如何在实际项目中应用jxl和Apache POI。 总的来说,jxl和Apache ...
提供的压缩包文件"excel导出"可能包含了使用JXL和POI生成Excel的示例代码,通过查看这些代码,你可以更好地理解如何在实际项目中应用这两个库。 总结来说,JXL和Apache POI都是Java中用于处理Excel的强大工具,各...
Java是一种广泛使用的编程语言,尤其在企业级...不过,需要注意的是,jxl库对较新版本的Excel(如xlsx格式)支持有限,对于新版本的Excel文件操作,推荐使用Apache POI库。但如果你只处理xls格式,jxl库已经足够用了。