第32卷增刊
20。7年9月
广西大学学报(自然科学版)
JournalofGua“gxiUnlversity(NatScjEd)
V01.32,SupSept.,2007
文章编号:1001?7445(2007)增一0401一03
基于POI的
JSP动态报表生成技术
杨学明,梁高峰
(广西大学人事处,广西南宁530004)
摘要:JsP是一种
web技术,动态生成报表是其弱项,本文介绍了POI组件的基本用法,提出使用PoI组件在服务器端动态生成ExceI报表文件,再传输给客户端打印的web报丧解决
方案,井给出了实验样例.关键词一JSP报袁;POI;ExceI中围分类号;TP3ll文献标识码:A
随着Internet/Intranet的发展,越来越多的管理信息
系统已经逐渐从局域网c/s模式向B/s模式转变.B/s模式具有传统c/s模式有更多的优点,如:更加开放、与软硬件环境无关、应用扩充和系统维护升级方便等等,目前已成为电子政务、电子商务应用系统首选的计算模式.但在由于B/s的客户端一般是浏览器,其报表打印功能比较弱,在C/s下相对较易实现的报表打印功能在B/s下却成为一个难点.Excel是
常用的报表办公
软件,有着较广泛的用户群.本文在实践中,实现了在JsP环境下用POI组件动态产生Excel报表的方法,即:在JsP服务器中动态产生Excel报表,再把Excel报表传输给客户端,客户端接收到数据后,自动启动ExceI软件打印报表,利用Excel强大的打印功能实现web报表的客户端打
印.
1
P01软件包
POI是Apache软件基金会管理下的一个开源
Java项目,主要提供对微软文件(
word、Excel等)进
行读写的javaAPI类.在POI项目中,读写Excel
文档.要用到其中的HSsF组件.HSSF允许对xLs文件进行创建、读、写、修改操作,可操作单元格中的数值型、字符串型、日期型及计算公式数据.在HSSF组件中,一般使用org.apache.poi.hssf.usermo“1包中的各个API类,常用的类如下:
1.1
HSSFWorkbook类这个类是Excel
工作薄的高层表示,一般用来代表一个Excel文件,在对工作薄操作前,一般首先生
成一个HSSFworkbook对象。HSSFworkbook类中的主要方法有:(1)HSSFworkbook():构造方法,用于新建一个工作薄对象,例如:HSSFWorkbookworkbook—newHSSFWorkbook():如果要打开一个现有工作薄,所用的构造方法为:
public
HSSFworkbook(java.io.InputStreams),例如:
FileInputStreamfile=new
FiIelnputStream(”c:\my.xls”);HSSFWorkbookbook—newHSSFWorkbook(file);(2)createsheet(java.1ang.st“ngsheetname):在工作薄对象中创建一个工作表,形参是工作表名,如果没有形参则自动生成工作表名;如果指定表名的工作表已经存在,则抛出异常.例如:workbook.createSheet(”工作表1”);
workbook.createSheet();
收稿日期:2007一04—2l;修订日期:2007—05—17作者简介:杨学明(1975一),男(壮族).广西上林人,.广西大学助理实验师
万方数据
402