没有合适的资源?快使用搜索试试~ 我知道了~
首页Jasperreport+ireport 实践操作及web应用
Jasperreport+ireport 实践操作及web应用
5星 · 超过95%的资源 需积分: 17 56 下载量 183 浏览量
更新于2023-03-16
评论 2
收藏 154KB DOC 举报
学习完jasperreports+ireport,给我感觉深刻,不仅掌握了报表开发技术,还掌握了如何在web中生成pdf,xls,rtf文件,以下是jasperreports+ireport开发知识点: 1.字段,变量,参数,传参 2.矢量图,位图 3.超链接,锚 4.数据源,自定义数据源 5.国际化(I18N) 6.脚本 7.子报表 8.图表(饼图,柱图,线图) 9.导出pdf,xls,html...
资源详情
资源评论
资源推荐
Jasperreport+ireport 实践操作及 web 应用
学习完 给我感觉深刻不仅掌握了报表开发技术还掌握了如何在 中
生成 文件以下是 开发知识点
字段变量参数传参
矢量图位图
超链接锚
数据源自定义数据源
国际化
脚本
子报表
图表饼图柱图线图
!导出 "#
操作版本:$$
说明:本文并非入门级教程所以阅读本文需要有一定基础
以下针对每个知识点讲解在 中是如何操作以及在真实项目中如何部署
1.字段,变量,参数,传参
这个知识点很简单在 的%菜单下有&'(# 三个菜单如要定
义一个参数可进行如下操作
点击(#菜单此时弹出一个操作参数的窗口单击按钮输入参数名(#
#选择参数类型(#)*+如要赋一个默认值则填写默认值表达式,-
'-./默认值如为字符串则以0/10形式填写如为整形则以//1形式
填写以此类推填好后点23就新建了一个参数了
定义字段与定义参数是一样的操作至于定义变量操作差不多也相对少用一些在此就不讲
述
在 ireport 中如何引用字段,变量,参数?
引用字段使用4&56/#7
引用变量使用4'5%6/#7
引用参数使用4(5#6/#78或4(95#6/#7
4(95#6/#7一般用于拼接 : 语句它的值可以与 : 语句拼接后再去执行查询
例定义一个参数名为"类型为 ;/1默认值为0"<$$0
有一查询语句=>#-4(95"7
则执行查询时会替换成=>#-"<$$
4(5#6/#7在 : 语句中使用时也有一特殊情况
例有一参数名为类型为 /1默认值为//1$$
有一查询语句=>#-"<4(57
执行查询可正常查询但如果有一参数名为/#类型为 ;/1默认值为0?"//10
有一查询语句=>#-"/#<4(5/#7
执行查询时出错不知道为什么即使数据库中有该条记录不知是不是 -1还是自已哪里弄
错了解决办法是将查询语句改为=>#-"/#<@4(95/#7@
可以证明4(957语法只做替换操作如上只将4(95/#7替换成 ?"//1
也可以证明4(57语法在 : 语句中使用时值为数字类型还可以正常执行如为字符串类型则
会出错
在程序中如何传参?
如上例定义了一个 /# 参数那么在程序中如何动态传参查询出不同的记录呢也很简单
程序代码如下
A#</B"AC
#-0/#00?"//10C
D(//<D&A/1E#=//C
就是将参数名和值 - 进入一 #然后再填充报表时将 # 传过去就行了
2.矢量图,位图
D 支持矢量图与位图功能是因为他封装了 ="=" 是一个开源的图形
解决方案库使用 绘制矢量图或插入位图可以不用我们写一行代码这些
已经为我们全部封装好了 只提供了三种矢量图分别是矩形圆形线条下面先介绍如
何绘制矢量图再介绍如何插入位图
初始工作先新建一个空报表
绘制矩形:点击工具栏的E=/1按钮在 , 区域绘制一个矩形绘制方法与 / 自
带的画图工具一样绘制好后在该矩形上点右键选属性即可设置该矩形的属性大家可以根
据自己需要进行设置如设置前景色背景色
绘制圆形与绘制线条方法一样只需要在工具栏点相应的圆形工具或线条工具就行了
很简单吧
问题出现
图与图之间更具体的说法应该是元素与元素之间不能有任何重叠如重叠则只能显示
最上层的图
使用线条工具可以绘制斜线当导出为 文件没有任何问题当导出 "# 文件时发
现斜线变成了矩形解决方案是使用外部图形编辑软件绘制一条斜线并保存为图片文
件再将这个图片文件插入到报表相应位置中
在 ireport 中如何测试预览 pdf,html,xls…文件?
.首先要设置一下 文件有什么预览,"# 文件用什么预览…
点 2/FG;/1FG./(1#在弹出的窗口中填写正确的外部程序。
如我的设置如下:
./.)H(1#&H.(-H-# 文件编辑器
(,&',H(1#&HIHI= $HEHI=E
B*AJ')H(1#&H//.H.K(J2E..K.
KJ;'0,H(1#&HA=2=H2&&).H.K).J.K.0
E*&')H(1#&HL/*HI==H
该步操作只要设置一次,以后就不需要再设置了。
.设置你要预览的是什么文件, 默认预览的是 文件,但不是使用我们配制的外
部程序预览的,而是使用 的 DE' 预览的。你也可以设置使用我们配制的
外部程序来预览,点 M-FG(,&(%再点 .=-#+-=按钮,即可预览
(,& 文 件。点 M- FG B*AJ(% 再点 .=-#+-= 按钮 , 即 可 预 览
B*AJ 文件。
注意:任何一个报表都必须要有一个数据源来为报表提供数据。
.=-#+-=的意思就是构造一个只有一条记录的数据源传给报表,并且这条
记录的值都是 /-,这个按钮在测试报表不需要数据时,非常有用。
.=-"=%=//=/的意思就是将当前激活的连接或数据源传给报表,并生成报
表。
位图
插入位图也很简单在工具栏上点击#1按钮然后在,区域绘制一个”矩形”与绘制矩
形操作相同此时可以在你绘制的区域看到一个图片在这个图片上点右键选属性选#1
选项卡点“&/NO按钮选择你要插入的图片23 后就可以看到你要插入的图片了
在真实项目中如何插入图片,动态改变图片?
在真实项目中可不能使用上面介绍的方法来插入图片上面的方法只是启到"的作
用要想在真实项目中插入图片可以按照以下方法来配制
定义一个参数名为#1#类型;/1没有默认值
在报表设计界面中绘制一个 #1打开该 #1 的属性框选 #1 选项卡在 #1
./ 文本框中输入4(5#1#7代表该图片的路径是由 #1# 的参数值
来决定的我们可以在程序中传入该参数的值
如何在程序中传入该参数值呢?
示例代码如下
;%)/=/<:-1;/1;%)/C
A#</B"AC
(#-P#1#O=/1E("PQQ1OC
D(//<D&A/1E#=//C
传入不同的路径值即可动态改变图片
在 html 中如何显示图片?
当导出带有图片的报表到 文件时没有任何问题但导出到 "# 文件时发现图片不能
正常显示不要急 已经为我们提供了解决方案解决步骤如下
将以下代码添加到 # 文件中
<servlet>
<servlet-name>JasperreportsImageServlet</servlet-name>
<servlet-
class>net.sf.jasperreports.j2ee.servlets.ImageServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>JasperreportsImageServlet</servlet-name>
<url-pattern>/servlets/image</url-pattern>
</servlet-mapping>
程序代码按以下方式编写
;%)/=/<:-1;/1;%)/C
A#</B"AC
(#-P#1#O=/1E("PQQ1OC
A#1A</B"AC
:-1;/I-0AIR.;6AI(0#1AC
D(//<D&A/1E#=//C
:-1;/I-net.sf.jasperreports.j2ee.servlets.ImageServlet,.&ISJ*6DI
;(.E6(E*6;.;;26I**EMS*./C
DEB#.</DEB#.C
(#DE.(#DI;(.E6(E*/C
(#DE.(#2S*(S*6LE*.E/1LC
(#DEB#.(#AIR.;6AI(#1AC
(#DEB#.(#AIR.;6SE
:-1)/("0Q%Q#1T#1<0C
(#DEB#.(#;6E.A2'.6.A(*U6;(I).6M.*L..6E
2L;M/*ES.C
(#DEB#.(#;6S;R6AIR.;6*26IJR
M/*ES.C
3.超链接,锚
有时我们想在报表中为某个关键字添加超链接或锚使鼠标点击该关键字时跳转页面针对这
一小功能也提供了支持在 中操作很简单不是所有的元素都支持超链接
目前我所知道支持超链接的常用元素有动态文本框元素*&位图元素#1图表
元素)"这三种元素设置超链接的方法都是一样所以只介绍动态文本框如何设置超
链接
如何在 ireport 中插入超链接?
由于静态文本框不支持超链接所以只能通过动态文本框为静态文字设置超链接操作方法如
下所述
在工具栏中选中*&按钮回到,区域绘制一个 *&与绘制矩形方法一
样然后在该 *&上点右键选../在弹出的窗口中输入表达式“);,O然
后再点+按钮注意:P);,O要包含双引号
打开该*&的属性框选B+/V选项卡将B+/V1改为/VB+/V
*+改为E/=在 B+/VE/=./ 框中输入”"QQ=//P再点关
闭注意:P"QQ=//P要包含双引号
此时一个超链接已设置好导出 "# 文件看看点击 );, 即可弹出 );, 的网页
如何在 ireport 中插入锚?
其实锚是超链接的一种特殊形式因此支持超链接的元素都支持锚不支持超链接的元素都不
支持锚锚的设置也很简单只要你知道使用 "# 的WG设置锚那么 也是差不多的
设置锚也需要两步操作
设置锚对象
在*区域绘制一个动态文本框输入表达式“$$ 年终财务报表”再打开它的 B+/V选
项卡在I/="#./框中输入“O点关闭此时已定义了一个锚对象它的锚名
字是
链接锚对象
在, 区域绘制一个动态文本框输入表达式“返回顶部”再打开它的B+/V选项卡将
B+/V1 改为B+/V*+改为J=I/="在 B+/VI/="./ 框
中输入“O点关闭
一个锚链接已设置完毕导出 "# 看看当然如果你的报表内容不多那么锚起不到任何
作用
4.数据源,自定义数据源
数据源顾名思义数据来源,即报表数据从何而来。 可以从数据库、KAJ 文件、
);' 文件、%-)=/ 对象以及自定义数据源得到数据。在真实项目中,报表数据
一般从数据库得到,下面介绍在 中如何配制连接制数据库的数据源。操作步骤如下:
说明:本例以 A+;: 数据库来配制数据源
新建一个 ,=-#/(报表文档),点,FG)//=/Q,;-=FGFG,
D,M))//=/FG。在弹出的窗口中按照提示填写属性,例:
#:#+:
D,M),%:=##+:=,%
D,M)SEJ:=#+:QQ="$Q6/#
S#:
(:+-6
填好后,单击 * 按钮,如弹出)//=/-==-9,则代表数据源配制正确,并再
点 ;%按钮,保存配制。否则配制错误,请检查哪里出错。
配制好后,即可连接数据库。
那么如何用数据源查询数据库,并将查询结果显示在报表上呢?
说明:本例操作必须配制好数据库数据源才能正常操作。而且连接的数据库里要有表。
点,FGEX-+,在弹出的窗口中输入 ;XJ 查询语句:=>#6-。
如果 : 语句正确将在窗口底部显示该表的所有字段,点击 23,即完成了报表查询工作。
大家可以查看一下 & 面板, 已经自动将查询出的所有字段,定义成字段对象了
(也就是最前面所说的定义字段)。
说完了如何将数据查询出来,接下来的工作就是如何将数据显示在报表界面上。
点 'FG& 打开 & 面板,在面板上任意选一个字段,将它拖到 , 区域的左上
角对齐,再选一个字段拖到 , 区域的中上角,好了就用两字段做试验吧,只要 ,
区域够宽,大家可以多拖两个字段到 , 区域,拖到 , 区域的字段将在报表中显示。
调整好 , 区域的高度,运行(M-FG.=-"=%=//=/)一下看看吧,
剩余20页未读,继续阅读
leon@love
- 粉丝: 110
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- RTL8188FU-Linux-v5.7.4.2-36687.20200602.tar(20765).gz
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论9