报表,各种管理系统最基本的功能之一。Excel,当今世界最流行的电子表格软件。通过集成Excel来制作报表,便成了很多程序员的首选方案之一。
网上搜索一下'java excel',解决方案令人眼花缭乱。但当看看'jxl'、'POI'的例子时,报表的格式都得通过代码来一一设定,绝对的苦力活。不禁怀念起当年Delphi/VB等实现的一些成熟方案,对java社区产生了些许的失望。
继续寻找,无意中发现一篇介绍'jXLS'的文章,是'jxl'的笔误吧,抱着疑问的心情去看看。打开例子一看,惊艳! 我被彻底的震撼了。真是‘众里寻她千百度,蓦然回首,那人却在灯火阑珊处’。
闲言少叙,直接看图:
做过JSP的程序员,是不是有似曾相识的感觉.
结果就这样出来了. 再看两张图:
图表也支持,酷毙了!
再看看调用代码:(掰手指算算代码行数,第一次感觉到一只手的手指原来这么多)
Map beans = new HashMap();
beans.put("departments", departments);
XLSTransformer transformer = new XLSTransformer();
transformer.transformXLS(templateFileName, beans, destFileName);
对中文处理会有问题吗,被java库各种中文问题弄怕了的我,立即对这个问题进行了测试,结果:中文,No problem. yeah!
再了解一下jXLS的实现,它是主要基于两个开源项目,用POI进行Excel文件操作,用jexl进行表达式处理。这两个项目本身都是比较成熟的项目 了。POI对Excel的任何字体、颜色、边框等几乎任何格式都能处理。jexl是参考JSTL实现的,常用的表达式计算都能处理,复杂的计算可直接调用 java对象的方法进行实现。
报表,从此变得很轻松!
jXLS链接:http://jxls.sourceforge.net/