报表工具一般提供一下功能:
从报表工具的基本功能来看,使用报表工具,核心是两个,一个是数据源的定义,一个是样式的定义。
数据源的定义比较简单,一般是数据库,按照报表工具要求的配置好连接池,依照业务需求写SQL即可。
样式定义一般依托设计器,首先,熟悉设计器页面设置相关功能,然后熟悉相关组件即可。
报表引擎可能需要搭建另外的服务器,或者是独立的Web App,按要求部署即可,需考虑资源负载和单点故障。
在项目中使用报表工具分“设计时”和“运行时”。
设计时,使用可视化的报表设计工具“画”报表,绑定数据源。
获得报表样式文件,一般是XML格式。
为了提高报表执行效率,报表样式文件可能是编译过的二进制格式。
在运行时,发布报表样式文件到应用中。运行并获得结果。
需要对报表工具进行封装,满足“开闭原则”,即:保持Java代码的稳定,不因为新的报表需求或业务需求变更而修改Java代码。
封装后的报表模块,输入包括:数据源、样式定义、参数,数据源和样式定义都是在设计时确定的,从数据源获得的数据因参数不同而不同。
所以,报表模块可以如下访问:
http://myapp/report/?ds=ds1&rpt=rpt1&ext=html¶ms=blablabla
可以做如下约定:每个报表拥有一个name,数据源与样式文件都采用这个名字。
那么,报表模块访问方式可以为:
http://myapp/report/?name=rpt1&ext=pdf¶ms=blablabla
数据源和报表样式最好分开,就可以分开修改,修改sql的时候很多,特别是报表样式文件需要编译的情况。
报表数据源中,如果核心只是一个SQL语句,可以存成一个文件,或者存在数据库中,或者存在缓存中。
JasperReport是一款免费的、较为典型的报表工具。官方网址:http://sourceforge.net/projects/ireport/ 。
下载页面:
http://sourceforge.net/projects/ireport/files/latest/download 。
iReport是JasperReport的样式设计器。
详细图文教程如下:
[iReport设计器](http://download.csdn.net/detail/stationxp/8738859
)
其他文档:
ch1 概述
http://wenku.baidu.com/view/5af1894e852458fb770b5620.html
ch2 环境
http://wenku.baidu.com/view/7136bb40a8956bec0975e3d7.html
ch3 报表入门
http://wenku.baidu.com/view/5e8d11976bec0975f465e2d7.html
ch4 数据库
http://wenku.baidu.com/view/3523b077f46527d3240ce0d7.html
ch5 其他数据源
http://wenku.baidu.com/view/94aa9ed1240c844769eaeed7.html
常见问题
http://wenku.baidu.com/view/6bd50288680203d8ce2f2436.html
PDF查看器:Evince。
原文地址:http://blog.csdn.net/stationxp/article/details/46002333