import java.io.File;
import java.io.OutputStream;
import java.text.SimpleDateFormat;
import java.util.List;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
public class MssExcelBean {
public MssExcelBean() {}
public void expordExcel(OutputStream os,String beginDate,String endDate) throws Exception{
int row = 2; //从第三行开始写
int col = 0; //从第一列开始写
Workbook wb = Workbook.getWorkbook(new File("E:\\MSSTemplate.xls"));
WritableWorkbook wwb = Workbook.createWorkbook(os, wb);
WritableSheet ws = wwb.getSheet(0);
System.out.println("sheet页的名称:" + ws.getName());
MssServiceAction mssService = new MssServiceAction();
List list = mssService.getMssInfoByDate(beginDate, endDate);
if(list != null && list.size() > 0 ) {
for(int i=0;i<list.size();i++) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
MssEntity mss = (MssEntity)list.get(i);
ws.addCell(new Label(col++,row,mss.getMssType())); // 写工单类型
ws.addCell(new Label(col++,row,mss.getMssId())); // 写工单编号
ws.addCell(new Label(col++,row,mss.getMssRequestPerson())); // 写请求人
ws.addCell(new Label(col++,row,mss.getMssStatuts())); // 写工单状态
ws.addCell(new Label(col++,row,mss.getMssCreatePerson())); // 写创建人
ws.addCell(new Label(col++,row,sdf.format(mss.getMssCreateTime()))); // 写创建时间
ws.addCell(new Label(col++,row,mss.getMssPriority())); // 写优先级
ws.addCell(new Label(col++,row,mss.getMssAcceptGroup())); // 写受理组
ws.addCell(new Label(col++,row,mss.getMssAcceptPerson())); // 写受理人
ws.addCell(new Label(col++,row,mss.getMssTitle())); // 写标题
ws.addCell(new Label(col++,row,mss.getMssContractPerson())); // 写联系人
ws.addCell(new Label(col++,row,mss.getMssCompany())); // 写所在公司
ws.addCell(new Label(col++,row,mss.getMssContractNum())); // 写联系电话
ws.addCell(new Label(col++,row,mss.getMssSystem())); // 写专业类别
ws.addCell(new Label(col++,row,mss.getMssDesc())); // 写详述
ws.addCell(new Label(col++,row,sdf.format(mss.getMssDealTime()))); // 写反馈时间
ws.addCell(new Label(col++,row,mss.getMssDealProcess())); // 写处理过程
row++;
}
}
wwb.write();
wwb.close();
wb.close();
os.close();
}
}
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
request.setCharacterEncoding("UTF-8");
String beginDate = request.getParameter("beginDate");
String endDate = request.getParameter("endDate");
String fname = beginDate + "到"+ endDate + "工单" + ".xls";//导出的excel名字
System.out.println(fname);
System.out.println("ResponseEncoding:" + response.getCharacterEncoding());
try {
//PrintWriter out = response.getWriter();
OutputStream os = response.getOutputStream(); //取得输出流
response.reset(); //清空输出流
response.setHeader("Content-disposition", "attachment;filename=" + new String(fname.getBytes("GBK"), "ISO8859-1"));
response.setContentType("application/msexcel;charset=UTF-8");//定义输出类型
MssExcelBean mssExcel = new MssExcelBean();
mssExcel.expordExcel(os, beginDate, endDate);
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
} finally{
}
return null;
}
调用
location.href = "<%=request.getContextPath()%>/exportMssExcel.do?beginDate="+beginDate + "&endDate=" + endDate;
分享到:
相关推荐
本文将详细介绍如何利用Struts2、Hibernate(简称S2H)结合jxl.jar库来实现在Web应用中导出Excel文件的功能。 #### 二、环境搭建与准备工作 1. **项目搭建**: - 创建一个新的Struts2项目。 - 配置好Struts2和...
1. **jxl.jar**:这是一个用于读写Excel文件的Java库,它提供了方便的方法来操作Excel电子表格。开发者可以创建新的Excel工作簿,修改现有工作表,甚至执行复杂的公式和图表操作。对于处理数据导入导出、报表生成等...
struts2导出excel java 导出excel: JXL_excel: 可以直接在elipse下运行的例子 可以直接导出excel文件(包含所需的jar包) CSharpJExcel: 是JXL的官方下载的 包括详细的文档 和jar包
Struts2 框架与 Apache 的 JXL 库整合,可以方便地实现在 Java Web 应用中导入和导出 Excel 表格的功能。Apache JXL 是一个强大的 Java 库,专门用于读写 Microsoft Excel 文件,使得开发者无需依赖 Office API 就能...
9. **jxl.jar**:这是一个用于读写Excel文件的Java库,对于需要处理Excel数据的项目非常有用,例如报表生成、数据导入导出等场景。 10. **JTattoo.jar**:JTattoo是一个用于改变Java Swing组件外观的库,可以为Java...
2. **JAR包**: 提供了导出Excel功能的库,如JXL。JXL是一个开源的Java库,专门用于读写Excel文件。在这个Demo中,"JXL_excel"可能是包含JXL库的JAR包,确保了程序能够处理Excel文件。 3. **数据获取与处理**: 在...
导入xwork-2.1.2.jar可能是为了支持特定的MVC(模型-视图-控制器)操作,例如通过Web应用的后端控制器执行数据库查询,并使用jxl将结果输出为Excel文件。 **标签:**"jxl" 标签"jxl"再次强调了我们关注的焦点,...
23. **jxl.jar**: 提供读写Excel文件的功能,便于进行数据导入导出。 24. **log4j-1.2.14.jar**: 一个广泛使用的日志记录框架,提供了灵活的日志配置和输出格式。 25. **mysql-connector-java-3.0.16-ga-bin.jar**...
`jxl.jar`是Java Excel API,允许程序读写Excel文件,如果项目中有导出数据至Excel的需求,这个库会非常有用。 `dwr.jar`是Direct Web Remoting的实现,它允许在JavaScript和服务器端之间进行方法调用,实现富...
7. **部署与运行**: 下载项目后,你需要将所有依赖的库(如Struts2、POI或JXL的jar文件)添加到项目的类路径中,然后将项目部署到支持Servlet容器(如Tomcat)的服务器上,根据提示修改Excel文件路径,即可运行程序...
3. **jxl.jar**:JXL是一个Java库,用于读写Excel文件。虽然POI提供了更全面的Excel处理功能,但在早期的Java应用中,JXL因为其轻量级和简单易用而被广泛使用。 4. **struts.jar**:这是Apache Struts 1.x的核心库...
在Java编程中,将Excel数据写入数据库是一项常见的任务,特别是在数据处理和导入导出场景。这个场景通常涉及使用特定库来解析Excel文件,并通过某种框架(如Struts)与数据库进行交互。以下是对这个过程的详细解释:...
8. **jxl.jar**:这是一个读写Excel文件的库,类似于Apache POI,但功能相对简单一些。在没有使用Apache POI的情况下,可以使用jxl进行Excel相关的操作。 这些JAR文件都是SSH整合时为了保证系统正常运行和功能完整...
5. **jxl.jar** - JExcelApi是一个用于读写Excel文件的Java库,虽然POI已经很强大,但JExcelApi在处理较旧的Excel格式时仍然有用。 6. **struts.jar** - 这可能是Struts1的库文件,是一个早期的MVC框架,尽管已被...
9. **jxl.jar**:这是一个Java API,用于读写Excel文件,与Apache POI类似,但较旧且功能较少。在某些场合,开发者可能会选择使用jxl来处理Excel数据。 总结来说,这个压缩包集合了SSH框架开发所需的大部分核心库,...
XML解析库(Xerces)和Excel处理库(POI和JXL)可能用于数据导入导出或者报告生成。 总之,这个压缩包为那些在SSH和DWR环境中遇到依赖冲突问题的开发者提供了一个可能的解决方案,通过这些特定版本的JAR文件,他们...
- `jxl.jar`:JExcelAPI库,用于读写Excel文件,方便数据导入导出。 这些组件组合在一起,能够帮助开发者快速构建一个具备持久层(Hibernate)、业务逻辑层(Spring)和视图层(Struts2)的完整Java Web应用。通过...
9. jxl.jar:JExcelApi是一个用于读写Excel文件的Java库,与Apache POI类似,但功能相对较弱。在SSH开发中,可能用于简单地处理Excel数据。 10. standard.jar:这个可能是JSTL(JavaServer Pages Standard Tag ...
8. **jxl.jar**:与POI类似,jxl库也是处理Excel文件的,但版本较旧,可能已不再维护,建议使用POI。 9. **c3p0-0.9.1.2.jar**:C3P0是一个数据库连接池,它提高了数据库连接的效率,通过复用已打开的数据库连接,...
`jxl.jar`是另一个处理Excel的库,它提供了读写Excel文件的功能。与POI相比,jxl可能更简单易用,但在功能和性能上可能稍逊一筹。 `jboss-jmx.jar`和`jboss-common.jar`是针对JBoss应用服务器的JMX(Java ...