转自:http://www.blogjava.net/vjame/archive/2013/10/12/404908.html

JasperReports是一个开源的java报表制作引擎,官网地址:http://community.jaspersoft.com/
 
一、下载jasperreports项目jar包

http://community.jaspersoft.com/download

jasperreports
server为报表中心服务,jasperreports
library包括源代码、demo示例、最终版本的jar包、api文档等;jaspersoft studio
基于eclipse开发的jasperreports报表设计工具;ireport designer
强大的报表设计器,比studio功能丰富;jaspersoft etl 数据抽取传输加载的工具。这里我们主要用到是ireport
designer和jasperreports的libs。

二、下载jasperreports library,获得文件jasperreports-5.2.0-project.zip,解压,jasperreports相关jar包在dist目录下,报表和示例运行依赖的jar包在lib目录下。

jasperreports-5.2.0.jar
 jasperreports-applet-5.2.0.jar
 jasperreports-fonts-5.2.0.jar
 jasperreports-javaflow-5.2.0.jar
 
 其他jar包:
   groovy-all-2.0.1.jar: 将.jrxml编译成.jasper.如果你不使用java编译,而使用ireport工具编译则无须导入该包
   iText-2.1.7.jar: 生成pdf所依赖的包
   iTextAsian.jar:  支持pdf中文字体依赖的包
   poi-3.7.jar:  导出excel时候用
   commons-collections-2.1.1.jar
   commons-digester-2.1.jar:  解析.jrxml
   commons-logging-1.1.1.jar
   poi-3.7-20101029.jar: 生成excel报表所依赖的jar
  
   图形展现jfreechart相关jar包:
   jfreechart-1.0.12.jar
   jcommon-1.0.15.jar

三、使用Ant运行示例

下载并安装ant工具再配置
1.首先是ANT_HOME E:\apache-ant-1.7.1
2.再配置 PATH ,后面加上;E:\apache-ant-1.7.1\bin
3.在DOS下运行ant,ant -version看是否安好

四、运行示例
再到解压JasperReport JAR包主目录下
prompt> cd jasperreports-5.2.0\demo\samples 到这个里面
prompt> dir
prompt> cd barbecue
prompt> ant –p
prompt> ant javac
prompt> ant compile
prompt> ant fill
prompt> ant view
prompt> ant viewDesign
prompt> ant run
prompt> dir build\reports
prompt> ant clean

运行例子

这样就可以看到一些例子了。。

五、Jasper的工作流程如下图

首先是XML文件,就是我们所说的模版,用来生成报表的模版,里面会有模版的样式啊,内容啊等的信息
这个XML文件通过JasperReports里面的JRXmlLoader.load("xxx")方法来解析XML文件,并生成JasperDesign对象,JasperDesign再通过JRCompiler.compileReport(JasperDesign

jasperDesign)编译出JasperReport对象,JasperReport再通过JasperFillManager填充数据,生成相应的JasperPrint对象,然后再分两步,可以选择导出或者打印出来。

最新文章

  1. SPI协议及工作原理分析
  2. Java配置环境变量、方法和原因
  3. JS_01_入门学习
  4. PHP 错误处理
  5. Android 用 camera2 API 自定义相机
  6. shader程序员需要注意的优化Tips
  7. select应用
  8. Oracle的基本查询知识
  9. RocketMQ服务搭建_1
  10. BZOJ 1113 海报 单调栈
  11. Arduino从DHT11读取温湿度数据并显示在1602LCD
  12. 一个worker thread服务一个客户端
  13. 关于js的小知识
  14. Java基础学习篇---------封装
  15. axios post 踩坑之 post传参
  16. 一款纯css3实现的机器人看书动画效果
  17. IO在block级别的过程分析
  18. MFRC522开发笔记
  19. Debian防御DDOS(简易版本)
  20. c语言实验报告(四) 从键盘输入字符串a和字符串b,并在a串中的最小元素(不含结束符)后面插入字符串b.

热门文章

  1. iOS UIImage UIImageView 展示图片 不变形 处理
  2. Map集合按照value和key进行排序
  3. android OTA升级包制作【转】
  4. 监控MySQL的脚本
  5. hihocoder 第五十二周 高斯消元·二【高斯消元解异或方程 难点【模板】】
  6. 关于使用unigui、webxone、mysql的几个问题
  7. 关于spring事务注解
  8. C++写和读文件
  9. 分享一个关于R语言黄皮书的网站!
  10. Abp模块分析