jxls对比_结合JXLS和POI技术开发Web报表
贾薇薇
计算机工程应用技术
Computer
Knowledge
and
Technology
电脑知识
与技术
第
5
卷第
22
期
(2009
年
8
月
)
结合
JXLS
和
POI
技术开发
Web
报表
张古月
,
汪雄杰
(
武汉理工大学
,
湖北
武汉
430063
)
摘要
:
传统的
Web
报表开发方法是采用
iReport
和
jasperReport
相结合的方式
,
但该方式需要人工绘制报表
。
当系统报表结构复杂
且客户已提供
Excel
报表模板时
,
重复的人工绘制无疑延长了系统开发时间
。
针对这种情况
,
一个利用已有模板来生成
Excel
报表的
Java
开源包
—
JXLS
发挥了其不可替代的优势
。
探讨如何使用
JXLS
开发
Excel
报表
,
并阐述
JXLS
技术的优势和创新点
。
并通过
Jakarta
POI
的
HSSF
接口弥补
JXLS
的不足
,
使得二者结合来生成完美报表
。
关键词
:
Web
报表
;
JXLS
;
HSSF
接口
中图分类号
:TP311
文献标识码
:
A
文章编号
:
1009-3044(2009)22-6306-03
Through
A
Combination
of
JXLS
and
POI
to
Achieve
the
Development
of
Web
Report
ZHANG
Gu-yue,
WANG
Xiong-jie
(Wuhan
University
of
Technology,
Wuhan
430063,China)
Abstract:
The
traditional
method
for
the
development
of
report
is
the
combination
of
jasperReport
and
iReport,
but
the
approach
requires
manual
mapping
report
template.
In
view
of
this
situation,
a
java
open-source
package-JXLS
which
use
an
existing
report
template
to
generate
the
Excel
reports
play
its
irreplaceable
advantages.
This
article
will
explore
how
to
use
JXLS
to
achieve
development
of
Excel
re
-
ports
and
make
up
for
deficiencies
of
JXLS
through
the
use
of
HSSF
interface.
Key
words:
Web
report;
JXLS;HSSF
interface
Web
报表的实现是
B/S
应用系统中的重要环节
。
本文首先介绍
JXLS
及与其相关的主要技术
,
再重点论述如何用新的开源技术
JXLS
开发
web
报表
,
并通过与传统
web
报表开发方法的对比来阐述
JXLS
技术的优势和创新点
。
1
JXLS
技术
JXLS
是一个最新的精简易用的
java
开源库
,
能够通过已有的
XLS
模板生成
Excel
文件
,
也可以用来读取
XLS
文件并且通过
XML
配置文件将
java
中定义的
bean
对象的属性依次填充到电子表格的相应位置
。
JXLS
完全不同于
jxl
。
jxl
是
java
Excel
API
的简称
,
是允许
java
开发者读取
、
生成
Excel
电子表格的开源
API
,
其对
Excel
文档的
操作方法类似于
poi
。
而
JXLS
是在
java
程序中通过传递参数或者用标签引用结果集
、
对象等
,
然后在
Excel
模板中用标签填充要生
成数据的单元格来控制报表的生成
。
当传递参数时
,
模板中的引用格式为
${paraMap.get('
参数名称
')}
;
当传递的是结果集
、
对象相关
数据时
,
模板中的填充格式为
${
引用结果集
/
对象的标签名
.
属性
}
。
下文将结合实际系统阐述
web
报表的具体实现
。
2
POI
的
HSSF
接口
Jakarta
POI
是
apache
的子项目
,
目标是处理
ole2
对象
。
它提供了一组操纵
Windows
文档的
Java
API
。
目前比较成熟的是用
HSSF
接口处理
MS
Excel
(
97-2002
)
对象
。
它不像我们仅仅是用
CSV
生成的没有格式的可以由
Excel
转换的东西
,
而是真正的
Excel
对象
,
你可以控制一些属性如
sheet
,
cell
等
。
HSSF
是
Horrible
Spread
Sheet
Format
的缩写
。
通过
HSSF
,
你可以用纯
Java
代码来读取
、
写入
、
修改
Excel
文件
。
HSSF
中有很多
对
Excel
文档元素的引用
,
例如
:
HSSF
Workbook
代表
Excel
文档对象
,
HSSF
Sheet
代表
Excel
表单
,
HSSF
Row
代表
Excel
行
,
HSSF
Cell
代表
Excel
单元格等
。
通过
Java
代码对这些元素属性的操作
,
可以实现对
Excel
文件的读取
、
写入和修改
。
因此
HSSF
接口对
Excel
文件的每一步操作都要求程序员写到程序中
。
3
JXLS
在实际系统中的应用
3.1
系统背景介绍
本文采用
《
湖北省
XX
规费系统二期
》
作为应用背景
,
该系统的报表模块实现对票
据情况的汇总和统计
。
票据领入汇总报表就是其中一张报表
,
为了达到通过最简洁的描
述充分展现
JXLS
技术的目的
,
把业务比较复杂的部分略去
,
截取报表中最简单一部分
(
图
1
)。
数据说明
:
该图中的微机
A
票
、
手持机票是票的种类
;
填报单位为统计针对的单
位
;
上期结存表示在该统计时间段以前该单位结存的票数
(
具体含义在这里简略
);
对于领入部分
,
需要将票分段
,
每一段都有起号
(
该段第一张票号
)
和止号
(
该段最后一张票号
)。
3.2
实现思想
将该报表封装为一个类
,
把所有要显示的不同数据定义为一个类的不同属性
。
在类中提供计算出该类的不同属性的不同方法
,
收稿日期
:
2009-05-24
图
1
票据领入汇总报表部分截图
ISSN
1009-3044
Computer
Knowledge
and
Technology
电脑知识
与技术
Vol.5,No.
22
,
August
2009,
pp.6306-6308
E-mail:
kfyj@cccc.net.cn
http://www.dnzs.net.cn
Tel:+86-551-5690963
5690964
6306
jxls对比_结合JXLS和POI技术开发Web报表相关推荐
- 昨日关注:Google旧瓶装新酒 用遗弃技术开发Web新应用
2005-3-19 [网络技术] Google旧瓶装新酒 用遗弃技术开发Web新应用 # 为此软件开发人员纷纷开始在blogs上发表见解.直到2月18日位于旧金山的咨询机构Adaptive Path的 ...
- python3 xml 取标签显示内容_如何应用“XML+XSLT”技术分离Web表示层数据和样式
软件项目实训及课程设计指导--如何应用XML+XSLT技术分离Web表示层数据和样式 1."XML+XSLT"技术在J2EE技术平台中的应用 Java语言及相关的应用技术的产生解决 ...
- 区块链研究生专业_滁州区块链平台技术开发专业软件公司
滁州弈聪软件是专业滁州区块链技术开发公司,致力于区块链平台技术开发及区块链平台搭建服务,在电子货币,加密货币及虚拟币钱包开发,虚拟币交易系统开发,区块链+数字资产管理系统开发及电子金融行业具有丰富的经 ...
- 如何使用Ajax技术开发Web应用程序(2)
在上一篇文章中,我们讨论了如何通过javascript从一个远程XML文件中取得数据.在这篇文章中,我们将学会怎样对数据作更复杂的处理.作为一个示例,我们会准备一组XML数据,将数据分割成独立的片断并 ...
- jxls对比_久别重逢 QQ影音4.0跟旧版对比更新了什么?
原标题:久别重逢 QQ影音4.0跟旧版对比更新了什么? 相信大家都知道腾讯的QQ影音客户端停留在3.9版已经很久没有更新了,甚至还在前段时间传出腾讯将彻底放弃这款影音播放器.但没想到,QQ影音突然又上 ...
- jxls对比_罗技MX Keys与K780对比
罗技MX Keys与K780对比 2020-08-25 10:46:09 32点赞 54收藏 50评论 小编注:此篇文章来自即可瓜分10万金币,周边好礼达标就有,邀新任务奖励无上限,点击查看活动详情 ...
- java 显示word文档_如何通过apache POI技术来读取Word文档,并把Word文档的原来格式完整地显示在html网页?...
我把代码发到你的邮箱. package com.my.util; import java.io.BufferedWriter; import java.io.File; import java.io. ...
- python输出等腰三角形代码_酷呆了!Python开发web应用的一些中级技巧
上一篇文章,介绍了如何用python和flask来开发web应用,是不是觉得用python做web应用很简单? (1)URL如何传递参数? (2)网页如何重定向? 阅读前,还是希望大家能告诉我,关于您 ...
- 用python写web网页_从零开始,使用python快速开发web站点(1) | 学步园
环境:ubuntu 12.04 python版本: 2.73 ok,首先,既然是从零开始,我们需要的是一台可以运行的python的计算机环境,并且假设你已经安装好了python, 然后,既然是快速开 ...
- poi excel mysql_java的poi技术读取Excel数据到MySQL
这篇blog是介绍java中的poi技术读取Excel数据,然后保存到MySQL数据中. 你也可以在 :java的poi技术读取和导入Excel了解到写入Excel的方法信息 使用JXL技术可以在 : ...
最新文章
- st官网下载stm32固件库方法
- 分享时刻第二期:砍掉成本(1) 课后总结
- C++求复数的角度_高考数学一轮复习33,复数,常见类型及解题策略
- android 仓库管理 毕业论文,基于Android的仓库管理系统的设计与实现.zip
- 绿色版Mysql数据库快速搭建
- tinymce富文本编辑器(vue)
- Android布局小案例——安卓版计算器
- web逻辑思维题目_学编程必看:10道逻辑思维测试题(附答案)
- win10默认壁纸_仅4M!微软出品的壁纸软件,让桌面每天都不一样!
- layui实现后台管理系统界面:对示例代码改动几处即可轻松实现(转载)
- 关于使用Python——写最佳体重测试
- ABAQUS子程序技术文档-UEL
- 关键点检测——无监督
- css实现鼠标悬浮显示禁用图标
- 欧美slots游戏 源码(完整)
- P2P网络基础(学习笔记)
- uni-app实现PDA的离线语音(二)MT-TTS离线语音合成插件下载及集成
- 蓝牙协议与普通网络协议的对比
- 搜索引擎的基本原理(以及MetaSeeker搜索引擎)
- 如何访问服务器某个盘符(如D盘)