`
q_wong
  • 浏览: 108528 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Seam頁面導出Excel

    博客分类:
  • Seam
阅读更多
	public void exportData() {
		FacesContext ctx = FacesContext.getCurrentInstance();
		ctx.responseComplete();
		HttpServletResponse response = (HttpServletResponse) ctx
				.getExternalContext().getResponse();
		response.reset();
		response.setContentType("application/vnd.ms-excel");
		WritableWorkbook wwb = null;
		try {
			wwb = Workbook.createWorkbook(response.getOutputStream());
		} catch (IOException e) {
			e.printStackTrace();
		}
		if (wwb != null) {
			WritableSheet ws = wwb.createSheet("sheet1", 0);

			for (int i = 0; i < incomeTaxList.size(); i++) {
				try {
					ws.addCell(new Label(0, i, incomeTaxList.get(i)
							.getSalaryStart().toString()
							+ "~"
							+ incomeTaxList.get(i).getSalaryEnd().toString()));
					ws.addCell(new Label(1, i, incomeTaxList.get(i).getTax0()
							.toString()));
					ws.addCell(new Label(2, i, incomeTaxList.get(i).getTax1()
							.toString()));
					ws.addCell(new Label(3, i, incomeTaxList.get(i).getTax2()
							.toString()));
					ws.addCell(new Label(4, i, incomeTaxList.get(i).getTax3()
							.toString()));
					ws.addCell(new Label(5, i, incomeTaxList.get(i).getTax4()
							.toString()));
					ws.addCell(new Label(6, i, incomeTaxList.get(i).getTax5()
							.toString()));
					ws.addCell(new Label(7, i, incomeTaxList.get(i).getTax6()
							.toString()));
					ws.addCell(new Label(8, i, incomeTaxList.get(i).getTax7()
							.toString()));
					ws.addCell(new Label(9, i, incomeTaxList.get(i).getTax8()
							.toString()));
					ws.addCell(new Label(10, i, incomeTaxList.get(i).getTax9()
							.toString()));
					ws.addCell(new Label(11, i, incomeTaxList.get(i).getTax10()
							.toString()));
					ws.addCell(new Label(12, i, incomeTaxList.get(i).getTax11()
							.toString()));
				} catch (RowsExceededException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				} catch (WriteException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}

			try {
				wwb.write();
				wwb.close();
			} catch (IOException e) {
				e.printStackTrace();
			} catch (WriteException e) {
				e.printStackTrace();
			}
		}
	}

 Java操作Excel:http://www.iteye.com/topic/55844

分享到:
评论

相关推荐

    Jboss Seam中文版

    1. **Seam上下文**:介绍了Seam如何通过不同层次的上下文来管理应用的状态,包括无状态上下文、事件上下文、页面上下文、会话上下文、业务流程上下文、应用上下文等。 2. **组件类型**:详细列举了Seam支持的各种...

    jboss seam 2.01GA REF DOC

    - **页面流**:页面流是 Seam 中一种组织页面逻辑的方式。 - **游戏逻辑**:通过页面流管理游戏的状态和逻辑。 **1.5.2 工作原理** - **状态管理**:Seam 使用页面流管理用户会话的状态。 - **逻辑控制**:页面流...

    SEAM 中文开发指南

    - **工作原理**:此示例利用 SEAM 的页面流功能,根据用户的输入动态跳转不同的页面,实现了游戏逻辑。 ##### 1.6 完整的 Seam 应用程序:宾馆预订范例 - **介绍**:该示例展示了一个完整的宾馆预订系统的实现过程...

    JBOSS SEAM组件中文手册

    1. **JSF集成**: Seam与JSF的紧密结合,使得UI层的开发更为简便,通过Seam可以直接在JSF页面上操作后端数据。 2. **JPA集成**: Seam支持JPA,方便地处理数据库操作,包括实体管理和事务控制。 3. **EJB 3集成**: ...

    Seam框架文档简述

    Seam引入了一种声明式的会话管理机制,支持多种生命周期,如页面生命周期、对话生命周期等。这种机制可以帮助开发者更容易地管理Web应用的状态。 ##### 5. 使用注解配置而非XML Seam鼓励使用注解来进行配置,而...

    Seam 2.1 安全模块框架

    Seam 2.1 安全模块框架是一个强大的工具,为使用 Seam 开发的应用程序提供了全面的安全管理和认证机制。框架的核心特性包括: 1. **安全验证**:Seam 提供了一个可扩展的安全验证层,基于 Java Authentication and ...

    seam参考手册中文版

    ### Seam参考手册中文版知识点概览 #### 一、Seam简介及基本概念 ##### JBoss Seam概述 - **Seam**是JBoss家族中的一员,它是一个建立于Java EE平台之上的开源框架,旨在简化企业级应用的开发过程。 - **版本**: ...

    seam in action 中文 english

    它增强了JSF的功能,例如自动管理请求上下文、页面导航和转换验证等。 4. **EJB集成**:Seam与EJB 3.0无缝集成,允许开发者在不牺牲可维护性和性能的前提下,利用EJB来实现业务逻辑。这使得Seam成为开发企业级应用...

    jboss seam 教程

    - **工作原理**:页面流是Seam中一种重要的概念,它使得应用程序能够更好地控制页面之间的导航顺序和逻辑。 ##### 2.5 完整的Seam应用:酒店预订系统 - **介绍**:这是一个综合性的示例项目,涵盖了Seam的许多高级...

    jboss seam 学习资料,seam in action和官方手册

    **JBoss Seam 学习资源概述** JBoss Seam 是一个开源的应用程序框架,它整合了JavaServer Faces (JSF)、Enterprise JavaBeans (EJB)、Java Persistence API (JPA) 和其他Java EE技术,旨在简化开发过程,提高开发...

    seam_carving 代码实现 seam

    **Seam Carving 技术详解** Seam Carving,又称图像拉链,是一种基于能量最小化的图像调整方法,主要用于图像大小的动态调整,而不仅仅是简单的等比例缩放。它能够在保持图像主要结构不变的情况下,根据需要增加或...

    为Seam做好准备

    "为Seam做好准备"这个标题暗示我们即将探讨的是关于Seam框架的入门与准备工作。Seam是一个Java EE集成框架,它将JavaServer Faces(JSF)、Java Persistence API(JPA)、Enterprise JavaBeans(EJB)3.0以及其他...

    Seam_Java框架.doc

    不同于传统的基于页面请求的MVC Action,Seam采用事件驱动的方式,组件只需关注事件处理代码,而不必关心触发事件的具体方式,这为组件的复用提供了可能性。Seam组件结合了Action和Bean的功能,但更灵活,可以根据...

    seam级联菜单例子

    级联菜单通常涉及到Ajax技术,它允许部分页面更新而不是整个页面刷新,从而提高用户体验。在Seam框架中,我们可以利用其内置的Ajax支持来实现这一功能。Ajax交互通常由RichFaces或PrimeFaces这样的JSF组件库提供,...

    seam的注解和标签

    在Seam中,对话范围允许在多个页面之间共享数据,直到对话结束。 - `&lt;s:property&gt;`: 在JSF视图中,这个标签用于显示由Seam管理的组件的属性值。 - `&lt;s:form&gt;`: 是Seam提供的增强版的JSF表单标签,它可以自动处理...

    seam 的eclipse工程例子3

    5. 创建JSF页面:Seam与JSF的集成使得在JSF页面上可以直接使用Seam组件。你可以在`.xhtml`页面中使用`&lt;s:&gt;`或`标签来引用Seam组件。 6. 设置部署配置:在项目中,你需要配置`seam.properties`文件以指定运行环境和...

    Seam security

    Seam Security是针对Java Web应用程序的安全框架,它是JBoss Seam项目的一部分,提供了全面的安全解决方案,包括身份验证、授权和身份管理等功能。Seam Security以易于配置和使用为特点,允许开发者快速设置应用程序...

    seam_in_action

    根据提供的信息,我们可以推断出这是一本关于 Seam 框架的专业书籍,书名为《Seam in Action》,作者为 Dan Allen 和 Manning 出版社出版。本书主要讲解了 Seam 框架在 Java EE 3 环境中的应用与开发实践。接下来将...

    整合了seam的一些资源

    `Ajax`支持使得Seam应用能够实现部分页面更新,提供更流畅的用户体验。Seam与`RichFaces`的集成则进一步增强了这一特性,RichFaces提供了丰富的UI组件和Ajax功能,使开发者能够快速创建富客户端界面。 在提供的...

Global site tag (gtag.js) - Google Analytics