`

(转载)jXLS - 用模板产生Excel报表

    博客分类:
  • java
阅读更多

转载自:http://www.iteye.com/topic/75431

这将会是一个系列文章,介绍我们在开发过程中用到的一些open source library,覆盖到的范围有Excel, Email, FTP, XML, Monitor等等

=================主要内容分割线=================

jXLS ( http://jxls.sourceforge.net/ ) 是一个用来产生Excel文件的library,它非常小巧而且易用,能够用一个Excel模板加上数据来渲染产生最终的Excel文件,比直接用POI 这种底层的API来写要方便很多,尤其对于那些需要严格控制格式的Excel报表有非常大的帮助。

我们来看一下它文档上的例子,先准备好一个Excel模板:


这里用到forEach,outline,if这些tag,在它的文档里面有很详细的解释,如果输出结果要求很简单,也可以不需要tag。

然后准备好数据,放入到一个map,调用APi输出

Java代码
  1. List departmens =  new  ArrayList();  
  2. // initilize list of departments in some way   
  3. Map beans = new  HashMap();  
  4. beans.put("departments" , departments);  
  5. XLSTransformer transformer = new  XLSTransformer();  
  6. transformer.transformXLS(templateFileName, beans, destFileName);  
List departmens = new ArrayList();
// initilize list of departments in some way
Map beans = new HashMap();
beans.put("departments", departments);
XLSTransformer transformer = new XLSTransformer();
transformer.transformXLS(templateFileName, beans, destFileName);


           
这个就是输出的结果:


可以看到产生一份这样复杂的Excel,用jXLS来实现是很轻松愉快的一件事情。

利用jXLS和webwork (struts 2)良好的可扩展性,我们可以将2者集成在一起,通过实现一个Result(见附件),我们可以把action的所有属性都放到jXLS所要用的map里 面,让模板可以拿到action的属性,进行渲染输出,只需要在xwork.xml里面定义就可以了:
result type:

Java代码
  1. <result-type name= "excel"   class = "package.name.JxlsResult" />  
<result-type name="excel" class="package.name.JxlsResult"/>


和action result

Java代码
  1. <result name= "success"  type= "excel" >foo/bar.xls</result>  
<result name="success" type="excel">foo/bar.xls</result>



=================相关Lib分割线=================

excelutils ( http://excelutils.sourceforge.net/ ) 也是一个类似的项目,它本身已经提供了和webwork的集成,但是没有支持多个sheet渲染的功能,而且没有jXLS活跃。jXLS在最新版本里面还 提供了读取Excel的简便方法。

分享到:
评论
1 楼 aq1sw2 2011-10-13  
如果数据量一大就死掉了

相关推荐

    【JXls推荐学习】jXLS - 用模板产生Excel报表

    NULL 博文链接:https://zqft123.iteye.com/blog/676418

    jxls-poi导出excel示例代码文件

    `jxls`是一个Java库,它扩展了Apache POI项目,使得我们可以使用简单的模板语法来读写Excel文件。`jxls-poi`是`jxls`的一个分支,专门针对Apache POI进行优化,支持使用POI API处理Excel文件。Apache POI是一个开源...

    excel模板所需jar:commons-jexl-2.1.1.jar 和 jxls-core1.0.3.jar

    `jxls`是一个Java库,它的主要功能是帮助开发者将Java集合对象的数据动态地填入到Excel模板中,生成定制化的Excel报表。这个库使得开发者可以使用类似于JSP的语法在Excel模板中定义动态区域,从而简化了复杂的数据...

    官方jxls-2.4.1

    1. **模板语法**:Jxls使用一种类似于JSP的简单模板语法,允许在Excel中插入Java表达式和控制结构。例如,`&lt;jx:each&gt;`标签可以用来迭代Java集合中的元素,将它们填充到对应的单元格中。 2. **数据绑定**:通过AOP...

    jxls-core-1.0.2

    `jxls-core`是`jxls`项目的核心组件,它允许开发人员使用标准的Java模板语言(如JSP EL或Apache Tiles)来定义Excel模板,并在运行时动态填充这些模板。这个工具包极大地简化了Excel文件的生成过程,避免了手动创建...

    使用JXLS+Excel模板制作灵活的excel导出

    本文将详细介绍如何使用JXLS库结合Excel模板来实现这一功能。 JXLS(Java Excel Library)是一个强大的开源Java库,它允许开发者通过简单的XML模板来控制Excel文件的内容和格式。这个库简化了Java程序生成复杂Excel...

    jxls 所有的jar包

    Jxls是一个强大的Java库,它允许用户通过使用普通的Excel模板来生成复杂的Excel报告。这个压缩包文件包含了所有必要的jar包,使得开发者无需依赖Maven或其他构建工具,可以直接在项目中集成Jxls。以下是对Jxls及其...

    jxls包——jxls-1.0.1.zip

    jXLS的功能是:只使用几行代码就可以建立极端复杂的Excel报表。你所需要实现的大部分工作是建立XLS模板文件,完成所需要的格式,公式和宏等等,使用注释来指示出数据需要填入的位置。接着写几行代码调用jXLS引擎解析...

    jxls模板导出Excel教程

    jxls模板导出Excel教程 jxls是一种基于模板的报表生成工具,可以快速生成复杂的Excel报表。通过使用jxls,可以将报表生成过程简化,使其变得更加高效和灵活。 jxls的主要特点是使用模板来生成报表,用户可以根据...

    jxls利用模板生成excel文件

    **Jxls:基于模板生成Excel文件的神器** 在IT行业中,数据处理和报告生成是常见的需求,特别是当需要将大量数据导出为易于查看和分析的格式时,Excel...如果你需要在Java应用中生成Excel报表,`jxls`绝对值得一试。

    jxls-2.2.7.zip

    开发者可以创建一个包含占位符的Excel模板,然后使用jxls提供的API将数据动态地注入到模板中,生成最终的Excel文件。这种方式极大地简化了代码,提高了工作效率,尤其适合批量生成报告或者处理大量结构化数据的场景...

    Excel报表导出,复杂Excel模板导出(带单元格合并),jxls2

    首先,`jxls2`是一个强大的Java库,它扩展了Apache POI库的功能,使得开发者能够以声明式的方式来定义Excel模板,并将Java对象的数据填充到模板中,生成动态的Excel报表。这种工作方式极大地简化了Excel导出的编程...

    jxls使用模板实现导出excel!

    3. **jxls模板设计**: 在jxls中,你可以创建一个Excel模板文件,其中包含静态内容和占位符。占位符是使用特定的jxls标签定义的,例如`&lt;jx:each&gt;`用于遍历集合,`&lt;jx:eval&gt;`用于执行表达式。模板设计的目标是使...

    JXLS-0.9.6.ZIP

    《JXLS:高效解决Excel报表制作难题》 在信息化高度发展的今天,企业对数据管理和报表展示的需求日益增强。Excel作为广泛使用的电子表格工具,其灵活性和强大的计算能力深受青睐。然而,对于需要批量处理和动态生成...

    jxls导出模板

    jxls是一个基于Java的库,它允许开发者使用Apache POI库来扩展XLS(X)模板,从而动态生成Excel文件。 jxls的核心概念是通过模板和Java对象之间的映射关系,将业务数据填充到预定义的Excel模板中。这种方式使得开发者...

    jxls poi jxls-2.2.9.zip

    特别是在金融、教育、数据分析等行业,需要频繁生成或处理Excel报表时,jxls能显著提高开发效率。 **总结** jxls-2.2.9.zip这个压缩包中包含的是jxls库的2.2.9版本,它结合Apache POI,为Java开发者提供了一个强大...

    jxls1.0.5报表工具

    jxls是一个基于Java的库,它扩展了Apache POI库的功能,使得用户能够用简单的Excel模板来创建复杂的动态报告。jxls1.0.5是该工具的一个版本,它提供了一系列增强功能和改进,帮助开发者更便捷地处理Excel数据的导出...

    jxls2.3 官网最新下载

    1. **模板处理**:Jxls使用Excel作为模板语言,允许用户在Excel中定义报告布局,包括样式、公式和条件格式。在程序运行时,这些模板会自动填充来自Java对象的数据。 2. **数据绑定**:通过简单的注解或XML配置,...

    JXLS 2.4.0 excel 导出 可以运行在 JDK 1.6

    在进行导出时,JXLS 2.4.0的“直接运行”功能意味着使用者无需进行复杂的配置或设置,只需提供必要的数据和模板,就可以快速生成Excel文件。这简化了开发流程,提高了工作效率。 压缩包中的文件“JexcelTemple”...

    jxls-0.9.8.zip

    通过使用jxls-core,开发者可以利用Java编程语言直接对Excel工作簿进行操作,无需手动编写复杂的循环和条件判断,只需定义好模板,就可以实现数据的动态填充。这在处理大量结构化数据时非常有效,减少了代码量,提高...

Global site tag (gtag.js) - Google Analytics