转载自: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输出
-
List departmens =
new
ArrayList();
-
-
Map beans = new
HashMap();
-
beans.put("departments"
, departments);
-
XLSTransformer transformer = new
XLSTransformer();
-
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:
-
<result-type name=
"excel"
class
=
"package.name.JxlsResult"
/>
<result-type name="excel" class="package.name.JxlsResult"/>
和action result
-
<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的简便方法。
分享到:
相关推荐
NULL 博文链接:https://zqft123.iteye.com/blog/676418
jXLS的功能是:只使用几行代码就可以建立极端复杂的Excel报表。你所需要实现的大部分工作是建立XLS模板文件,完成所需要的格式,公式和宏等等,使用注释来指示出数据需要填入的位置。接着写几行代码调用jXLS引擎解析...
一个Maven项目,下载直接使用,直接找到 JxlsTest运行demo即可,功能强大,基本能满足所有报表的导出需求,支持多个Sheet导出,支持复杂的导出组合,可以自己写模板试玩下。
JXLS除了生成Excel报表功能,JXLS还提供了jxls-reader模块,jxls-reader模块会很有用,如果你需要解析一个预定义格式的Excel文件并在其中插入数据的话。jxls-reader允许你用一个简单的XML文件描述解析规则,读取...
在excel文件中通过类似于jstl的语言制作excel模板文件产生报表,强力推荐 这个是全的!!!
java 通过JXL架包,给excel文件添加水印,水印内容可自定义
jxls实现多sheet的报表导出-附件资源
JXLS 2.0一般简单的excel为模板制作报表工具。包含jar和demo
jxls 需要的两个jar 包,用于操作excel模板的相关报表生成和读取