IReport初学

JasperReport 6.0.0,iReport5.6,SqlServer2008

一:设置jdbc连接,本例设定mssqlserver 2008


[img]http://dl2.iteye.com/upload/attachment/0107/1467/e8037ac5-5d2d-356e-8b85-f680898fa0f8.jpg[/img]


[img]http://dl2.iteye.com/upload/attachment/0107/1473/fba786ce-4c07-3b0d-a273-17a4f4a7eb12.jpg[/img]


[img]http://dl2.iteye.com/upload/attachment/0107/1477/db73ce20-cf8a-30b1-b30d-07e179902c46.jpg[/img]


[img]http://dl2.iteye.com/upload/attachment/0107/1479/3e293445-5c53-3014-93dd-dd50d7c30317.jpg[/img]


上图下拉列表中红色部分表示无法使用的驱动,需要添加数据库驱动jar包(Tools > Options > iReport > Classpath and add the required JARs to the classpath);[参考官方文档http://community.jaspersoft.com/wiki/designing-report]
添加sqlserver jar:


[img]http://dl2.iteye.com/upload/attachment/0107/1487/da78c720-55cd-3401-a351-f4eef74af80b.jpg[/img]


[img]http://dl2.iteye.com/upload/attachment/0107/1489/9ca73ccb-5bee-33dd-bb92-a2fdcbd7dd72.jpg[/img]


回到数据库连接建立步骤:


[img]http://dl2.iteye.com/upload/attachment/0107/1491/0ecbeca6-cbb6-3ba1-b221-c7fbfc3ced4c.jpg[/img]



设定好连接参数后,可以点击”test” 测试连接;最后“save”。

项目中的jar包均采用iReport-5.6.0\ireport\modules\ext 下提供的(自行添加jdbc驱动jar包);
新建一个测试导出例子:



[img]http://dl2.iteye.com/upload/attachment/0107/1493/b77b8e55-e1d1-38e6-bad5-451697c28fc8.jpg[/img]

[img]http://dl2.iteye.com/upload/attachment/0107/1495/026d16a8-5987-3993-9a6a-db054eaf3a0a.jpg[/img]

[img]http://dl2.iteye.com/upload/attachment/0107/1497/aa50c385-6d19-3e19-bd20-a3f0a4973c48.jpg[/img]



此时会生成一个“.jrxml”文件;

拖拽一个label(Static Text) 到模板区域,并输入文字信息:


[img]http://dl2.iteye.com/upload/attachment/0107/1499/3e8494b3-a622-3ec8-b181-76100ea66cb7.jpg[/img]


Label必须在各自的Band 内;其他Band 如果不需要,则右键单击某Band,进行删除:


[img]http://dl2.iteye.com/upload/attachment/0107/1501/a1de74c0-11a5-3fd1-8a88-226178ceb384.jpg[/img]


如果需要JDBC数据,则关联Fields:



[img]http://dl2.iteye.com/upload/attachment/0107/1503/bca0732b-7421-31a2-9ea2-9be8aac160c1.jpg[/img]


[img]http://dl2.iteye.com/upload/attachment/0107/1505/c05d3966-38b4-3037-ad72-3be994238bb8.jpg[/img]


不报错的话(table1为sqlserver数据库中的一张表),点击“OK”,则列信息会出现在左侧栏的Fields下:


[img]http://dl2.iteye.com/upload/attachment/0107/1507/637ce6d5-f4dd-393b-acdb-25c2b9628444.jpg[/img]


拖拽某列到Detail区域:

[img]http://dl2.iteye.com/upload/attachment/0107/1509/c1c78b94-ae17-3da0-90ee-e7e273bf2255.jpg[/img]

[img]http://dl2.iteye.com/upload/attachment/0107/1511/8f662c17-a61f-3f87-87e6-3e82b1a69e51.jpg[/img]


设置好之后点击”Preview”可以查看效果;


[img]http://dl2.iteye.com/upload/attachment/0107/1513/c69c930f-f8b0-3496-b064-904c6d431610.jpg[/img]


如果用java代码导出pdf格式文件,会出现中文不显示状况,需要中文支持:



选中需要中文支持的label文字,在右侧属性中设置:


[img]http://dl2.iteye.com/upload/attachment/0107/1515/9d8470e0-b238-36d9-ac55-1dd24e5f93e8.jpg[/img]
[img]http://dl2.iteye.com/upload/attachment/0107/1517/40d0369b-553c-3c9b-aa30-275df73fd862.jpg[/img]


[img]http://dl2.iteye.com/upload/attachment/0107/1521/21efccbf-fde5-3fd6-b210-9046b58010c4.jpg[/img]

设置好之后,重新“Preview”:


点击 ”Run Again” 按钮,生成“.jasper”文件;
在工具栏的”Preview”下选择”PDF Preview”,因为我们需要导出的是PDF格式;



生成的文件:

途中的 null 是因为java代码读取jrxml文件导出时候,设置的是一个空的datasource;需要自行编写获取数据库Connection的code;


[img]http://dl2.iteye.com/upload/attachment/0107/1523/ee108bce-92bb-3631-bfae-5b7430f25ee4.jpg[/img]


最终效果如图:


[img]http://dl2.iteye.com/upload/attachment/0107/1525/b7f7350a-3c5f-3bdc-a048-dd0e8ed22f06.jpg[/img]


如果需要给数据添加表格装,需要选中label设置其“Padding And Borders”;
如:


[img]http://dl2.iteye.com/upload/attachment/0107/1527/80b51cb5-10ea-31d2-a048-aba35f2ffdb1.jpg[/img]


启动ireport时:


[img]http://dl2.iteye.com/upload/attachment/0107/1529/627d2c82-4330-373d-b8c9-0ef711d2e6ed.jpg[/img]


进入安装目录;etc下 ,文件ireport.conf 设置jdkhome="”为 jdk home
如果数据为空时,弹出

[img]http://dl2.iteye.com/upload/attachment/0107/1531/7e6fcb73-0638-34eb-a939-09631b0f854c.jpg[/img]

官方说这个不是错误!

(参考:http://community.jaspersoft.com/wiki/exporting-reports-ireport-designer)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值