`
ganjp
  • 浏览: 71911 次
  • 性别: Icon_minigender_1
  • 来自: 其实还可以
社区版块
存档分类
最新评论

Struts1.1通过模板导出Excel (jxl.jar)

阅读更多

  

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;

 

分享到:
评论

相关推荐

    S2SH+jxl.jar实现导出Excel文档

    本文将详细介绍如何利用Struts2、Hibernate(简称S2H)结合jxl.jar库来实现在Web应用中导出Excel文件的功能。 #### 二、环境搭建与准备工作 1. **项目搭建**: - 创建一个新的Struts2项目。 - 配置好Struts2和...

    jxl.jar;dom4j.jar;jsonplugin-0.34.jar;junit-3.8.2.jar;log4j-1.2.14.jar;struts2-codebehind-plugin-2.0

    1. **jxl.jar**:这是一个用于读写Excel文件的Java库,它提供了方便的方法来操作Excel电子表格。开发者可以创建新的Excel工作簿,修改现有工作表,甚至执行复杂的公式和图表操作。对于处理数据导入导出、报表生成等...

    struts2导出excel java 导出excel JXL

    struts2导出excel java 导出excel: JXL_excel: 可以直接在elipse下运行的例子 可以直接导出excel文件(包含所需的jar包) CSharpJExcel: 是JXL的官方下载的 包括详细的文档 和jar包

    struts2整合apache的jxl导入导出excel表格

    Struts2 框架与 Apache 的 JXL 库整合,可以方便地实现在 Java Web 应用中导入和导出 Excel 表格的功能。Apache JXL 是一个强大的 Java 库,专门用于读写 Microsoft Excel 文件,使得开发者无需依赖 Office API 就能...

    J2EE 各种jar下载

    9. **jxl.jar**:这是一个用于读写Excel文件的Java库,对于需要处理Excel数据的项目非常有用,例如报表生成、数据导入导出等场景。 10. **JTattoo.jar**:JTattoo是一个用于改变Java Swing组件外观的库,可以为Java...

    Struts2+Excel导出Demo,测试可用带JAR包

    2. **JAR包**: 提供了导出Excel功能的库,如JXL。JXL是一个开源的Java库,专门用于读写Excel文件。在这个Demo中,"JXL_excel"可能是包含JXL库的JAR包,确保了程序能够处理Excel文件。 3. **数据获取与处理**: 在...

    jxl从数据库导出到excel工具包

    导入xwork-2.1.2.jar可能是为了支持特定的MVC(模型-视图-控制器)操作,例如通过Web应用的后端控制器执行数据库查询,并使用jxl将结果输出为Excel文件。 **标签:**"jxl" 标签"jxl"再次强调了我们关注的焦点,...

    常用的jar包简单介绍

    23. **jxl.jar**: 提供读写Excel文件的功能,便于进行数据导入导出。 24. **log4j-1.2.14.jar**: 一个广泛使用的日志记录框架,提供了灵活的日志配置和输出格式。 25. **mysql-connector-java-3.0.16-ga-bin.jar**...

    Struts2.1.8,Spring2.5,Hibernate3所需Jar包 S2SH SSH

    `jxl.jar`是Java Excel API,允许程序读写Excel文件,如果项目中有导出数据至Excel的需求,这个库会非常有用。 `dwr.jar`是Direct Web Remoting的实现,它允许在JavaScript和服务器端之间进行方法调用,实现富...

    struts2 poi,jxl向excel表中插入记录源代码

    7. **部署与运行**: 下载项目后,你需要将所有依赖的库(如Struts2、POI或JXL的jar文件)添加到项目的类路径中,然后将项目部署到支持Servlet容器(如Tomcat)的服务器上,根据提示修改Excel文件路径,即可运行程序...

    SSHJAR包part02

    3. **jxl.jar**:JXL是一个Java库,用于读写Excel文件。虽然POI提供了更全面的Excel处理功能,但在早期的Java应用中,JXL因为其轻量级和简单易用而被广泛使用。 4. **struts.jar**:这是Apache Struts 1.x的核心库...

    java中excel数据写入数据库

    在Java编程中,将Excel数据写入数据库是一项常见的任务,特别是在数据处理和导入导出场景。这个场景通常涉及使用特定库来解析Excel文件,并通过某种框架(如Struts)与数据库进行交互。以下是对这个过程的详细解释:...

    SSH整合需要的所有JAR包(1部分).

    8. **jxl.jar**:这是一个读写Excel文件的库,类似于Apache POI,但功能相对简单一些。在没有使用Apache POI的情况下,可以使用jxl进行Excel相关的操作。 这些JAR文件都是SSH整合时为了保证系统正常运行和功能完整...

    happycoding_libs_02

    5. **jxl.jar** - JExcelApi是一个用于读写Excel文件的Java库,虽然POI已经很强大,但JExcelApi在处理较旧的Excel格式时仍然有用。 6. **struts.jar** - 这可能是Struts1的库文件,是一个早期的MVC框架,尽管已被...

    ssh项目依赖jar包合集

    9. **jxl.jar**:这是一个Java API,用于读写Excel文件,与Apache POI类似,但较旧且功能较少。在某些场合,开发者可能会选择使用jxl来处理Excel数据。 总结来说,这个压缩包集合了SSH框架开发所需的大部分核心库,...

    ssh+dwr坚决不冲突的jar

    XML解析库(Xerces)和Excel处理库(POI和JXL)可能用于数据导入导出或者报告生成。 总之,这个压缩包为那些在SSH和DWR环境中遇到依赖冲突问题的开发者提供了一个可能的解决方案,通过这些特定版本的JAR文件,他们...

    SSH框架整合架包

    - `jxl.jar`:JExcelAPI库,用于读写Excel文件,方便数据导入导出。 这些组件组合在一起,能够帮助开发者快速构建一个具备持久层(Hibernate)、业务逻辑层(Spring)和视图层(Struts2)的完整Java Web应用。通过...

    SSH开发使用的各种包

    9. jxl.jar:JExcelApi是一个用于读写Excel文件的Java库,与Apache POI类似,但功能相对较弱。在SSH开发中,可能用于简单地处理Excel数据。 10. standard.jar:这个可能是JSTL(JavaServer Pages Standard Tag ...

    spring整合hibernate的所需jar包

    8. **jxl.jar**:与POI类似,jxl库也是处理Excel文件的,但版本较旧,可能已不再维护,建议使用POI。 9. **c3p0-0.9.1.2.jar**:C3P0是一个数据库连接池,它提高了数据库连接的效率,通过复用已打开的数据库连接,...

    SSH整合所需的JAR包-2

    `jxl.jar`是另一个处理Excel的库,它提供了读写Excel文件的功能。与POI相比,jxl可能更简单易用,但在功能和性能上可能稍逊一筹。 `jboss-jmx.jar`和`jboss-common.jar`是针对JBoss应用服务器的JMX(Java ...

Global site tag (gtag.js) - Google Analytics