- 浏览: 184598 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
xoxoj:
如果发现input输入框里包含这些全角的内容,jquery应该 ...
全角正则 -
TJYCHYANGCHENHUI:
不对吧!你的第一句话说错了好吧,在没有开启事务的情况下,sa ...
hibernate入门(三)Session中的主要方法 -
leonardleonard:
好帖
js公共函数(utils.js) -
xyqqjy:
朋友你和我的现状很像啊!
我离职快一年了,一直没有再做开发这一 ...
浮躁,我 -
djy1135:
确实需要静一下心! 一样一样来吧。 东西学不半扔了,跟没学差 ...
浮躁,我
ireport是工具,jasper才是核心。没有ireport也可以做报表(熟悉jasper报表xml格式即可)。
很自然地,那么多的资料,哪里的最好?当然是jasper开源的例子最好!
有关资源可以到http://jasper.sourceforge.net/下载
https://sourceforge.net/projects/jasper/ 提供比较可靠的下载
https://jasper.svn.sourceforge.net/svnroot/jasper/ 提供比较新的下载。
目前他们提供的svn帐号是anonsvn/anonsvn
有许多的例子,看了之后,就会豁然开朗。
因为有太多的例子,现在有50个左右,逐一介绍是没有必要的。
其中有四个是比较值得看的:
1)datasource, 学习定制自己的JRdatasource
2) 一个是jasper,可以了解如何操纵jasper文件
3) 一个是webapp,如何实现网络打印jrprint文件或者数据流。
4) CHARTS,有关于所有chart的示例。
这其中,大部分的代码是类似的。
通过java开发工具netbeans或者eclipse或者jbuilder可以查看 jasperreports-3.0.0.jar,jasperreports-3.0.0-applet.jar所包含的类的内容,具体需要什么版本,可以到相关网站下载。
最后,把比较有代表性的抄录如下:
public static void main(String[] args) { if(args.length == 0) { usage(); return; } String taskName = args[0]; String fileName = args[1]; try { long start = System.currentTimeMillis(); if (TASK_FILL.equals(taskName)) { JasperFillManager.fillReportToFile(fileName, null, new JREmptyDataSource()); System.err.println("Filling time : " + (System.currentTimeMillis() - start)); } else if (TASK_PRINT.equals(taskName)) { JasperPrintManager.printReport(fileName, true); System.err.println("Printing time : " + (System.currentTimeMillis() - start)); } else if (TASK_PDF.equals(taskName)) { File sourceFile = new File(fileName); JasperPrint jasperPrint = (JasperPrint)JRLoader.loadObject(sourceFile); File destFile = new File(sourceFile.getParent(), jasperPrint.getName() + ".pdf"); JRPdfExporter exporter = new JRPdfExporter(); HashMap fontMap = new HashMap(); FontKey key = new FontKey("DejaVu Serif", true, false); PdfFont font = new PdfFont("DejaVuSerif-Bold.ttf", "Cp1252", true); fontMap.put(key, font); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFile.toString()); exporter.setParameter(JRExporterParameter.FONT_MAP, fontMap); exporter.exportReport(); System.err.println("PDF creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_XML.equals(taskName)) { JasperExportManager.exportReportToXmlFile(fileName, false); System.err.println("XML creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_XML_EMBED.equals(taskName)) { JasperExportManager.exportReportToXmlFile(fileName, true); System.err.println("XML creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_HTML.equals(taskName)) { File sourceFile = new File(fileName); JasperPrint jasperPrint = (JasperPrint)JRLoader.loadObject(sourceFile); File destFile = new File(sourceFile.getParent(), jasperPrint.getName() + ".html"); JRHtmlExporter exporter = new JRHtmlExporter(); HashMap fontMap = new HashMap(); fontMap.put("sansserif", "DejaVu Sans, Arial, Verdana"); fontMap.put("serif", "DejaVu Serif, Times New Roman"); fontMap.put("monospaced", "DejaVu Sans Mono, Courier, Courier New"); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFile.toString()); exporter.setParameter(JRExporterParameter.FONT_MAP, fontMap); exporter.exportReport(); System.err.println("HTML creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_RTF.equals(taskName)) { File sourceFile = new File(fileName); JasperPrint jasperPrint = (JasperPrint)JRLoader.loadObject(sourceFile); File destFile = new File(sourceFile.getParent(), jasperPrint.getName() + ".rtf"); HashMap fontMap = new HashMap(); fontMap.put("sansserif", "DejaVu Sans"); fontMap.put("serif", "DejaVu Serif"); fontMap.put("monospaced", "DejaVu Sans Mono"); JRRtfExporter exporter = new JRRtfExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFile.toString()); exporter.setParameter(JRExporterParameter.FONT_MAP, fontMap); exporter.exportReport(); System.err.println("RTF creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_XLS.equals(taskName)) { File sourceFile = new File(fileName); JasperPrint jasperPrint = (JasperPrint)JRLoader.loadObject(sourceFile); File destFile = new File(sourceFile.getParent(), jasperPrint.getName() + ".xls"); JRXlsExporter exporter = new JRXlsExporter(); HashMap fontMap = new HashMap(); fontMap.put("sansserif", "DejaVu Sans"); fontMap.put("serif", "DejaVu Serif"); fontMap.put("monospaced", "DejaVu Sans Mono"); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFile.toString()); exporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.FALSE); exporter.setParameter(JRExporterParameter.FONT_MAP, fontMap); exporter.exportReport(); System.err.println("XLS creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_JXL.equals(taskName)) { File sourceFile = new File(fileName); JasperPrint jasperPrint = (JasperPrint)JRLoader.loadObject(sourceFile); File destFile = new File(sourceFile.getParent(), jasperPrint.getName() + ".jxl.xls"); JExcelApiExporter exporter = new JExcelApiExporter(); HashMap fontMap = new HashMap(); fontMap.put("sansserif", "DejaVu Sans"); fontMap.put("serif", "DejaVu Serif"); fontMap.put("monospaced", "DejaVu Sans Mono"); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFile.toString()); exporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.TRUE); exporter.setParameter(JRExporterParameter.FONT_MAP, fontMap); exporter.exportReport(); System.err.println("XLS creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_CSV.equals(taskName)) { File sourceFile = new File(fileName); JasperPrint jasperPrint = (JasperPrint)JRLoader.loadObject(sourceFile); File destFile = new File(sourceFile.getParent(), jasperPrint.getName() + ".csv"); JRCsvExporter exporter = new JRCsvExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFile.toString()); exporter.exportReport(); System.err.println("CSV creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_ODT.equals(taskName)) { File sourceFile = new File(fileName); JasperPrint jasperPrint = (JasperPrint)JRLoader.loadObject(sourceFile); File destFile = new File(sourceFile.getParent(), jasperPrint.getName() + ".odt"); JROdtExporter exporter = new JROdtExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFile.toString()); exporter.exportReport(); System.err.println("ODT creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_RUN.equals(taskName)) { JasperRunManager.runReportToPdfFile(fileName, null, new JREmptyDataSource()); System.err.println("PDF running time : " + (System.currentTimeMillis() - start)); } else { usage(); } } catch (JRException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } }
发表评论
-
Android开源git40个App源码
2019-04-26 10:48 567(JamsMusicPlayer)很棒的音乐播放器( ... -
Quartz的cron表达式
2019-03-22 11:48 4001. Seconds 2. ... -
JAVA JS 身份证正则表达式
2012-03-28 16:36 1270String pattern = "( ... -
生产者消费者问题实现
2011-10-31 14:16 800这是个线程同步的经典例子,源代码如下: /** *经 ... -
设计模式----观察者模式Observer
2011-10-19 10:06 836Observer模式 Observer模式的功用,是希望两个 ... -
META-INF中的MANIFEST.MF的作用
2011-03-03 16:50 2018MANIFEST中的配置信息共 ... -
JAVA日期时间小结
2011-03-01 11:30 2168Java 语言的Calendar,GregorianCalen ... -
java读取Properties文件六种方法
2011-01-28 10:15 8851。使用java.util.Properties类的load( ... -
用java实现发邮件
2010-08-06 22:49 991用java实现发邮件的原理非常简单,首先建立和邮件服务器的So ... -
Java 实现文件分割合并
2010-08-06 22:37 1183import java.io.*; class Fen{ ... -
java写的des加密解密
2010-08-06 22:02 1284首先说一下什么是DES加密 DES算法为密码体制中的对称密码 ... -
Jasper Report总结
2010-07-30 12:43 1735下载 Jasper: ... -
java给图片加水印,文字
2010-07-19 22:59 999import java.awt.AlphaComposite; ... -
JSP中的EL表达式
2010-07-11 23:19 734一、JSP EL语言定义 ... -
Java生成gif动画
2010-07-09 21:17 1389BufferedImage src = ImageI ... -
四个有用的Java过滤器收藏
2010-07-09 21:15 895一、使浏览器不缓存页面的过滤器 一、使浏览器不缓存页面的过滤 ... -
简捷强大的单文件XML操作工具类
2010-07-09 21:13 1014这个是XML操作工具类,只有一个类文件,使用的全部是JDK ... -
Java连接各种数据库
2010-07-09 21:08 7211、Oracle8/8i/9i数据库(thin模式) C ... -
java采集csdn论坛源码
2010-07-09 17:15 1317import java.io.BufferedReader; ... -
java ThreadLocal
2010-06-25 17:41 723一:ThreadLocal的设计与实现 早在Java 1.2 ...
相关推荐
需要JDK、Web服务器和数据库的相关配置,并确保ireport和jasperreports库的正确引入。 8. **报表设计详解** - **Band**: 报表设计的核心概念,类似于页面的行。有多种类型的Band,如Page Header, Detail, Page ...
**ireport制作jasper报表文件** 在IT行业中,报表生成是一项关键任务,它帮助企业分析数据、做出决策。IReport和JasperReports是两个强大的开源工具,用于设计和生成复杂的报表。本文将深入探讨如何使用IReport来...
### jasper+ireport化复杂为简单系列教程1 #### iReport设计器应用 **iReport** 是一个强大的报表设计工具,常被用于生成复杂的报表。本教程旨在通过一系列实例简化 iReport 的使用过程,帮助读者更好地掌握其核心...
《ireport+jasper中文手册》是一本针对Java报表开发工具ireport和jasperReports的详尽指南,旨在帮助开发者在Java环境下高效地设计和生成复杂的报表。这份PDF版的手册涵盖了这两个工具的基础知识、进阶功能以及实际...
iReport是专为JasperReports库和JasperReports Server打造的一款强大的报表可视化设计工具,它为用户提供了直观的图形化界面,使得非编程背景的人员也能轻松创建复杂的报表和图表。iReport 4.5.1是其一个稳定版本,...
标题中的"ireport itext jasper-compiler"涉及到了三个关键组件:iReport、iText和JasperReports的编译器。这些组件都是Java开发中用于报表生成的重要工具。 iReport是一款开源的报表设计工具,它是JasperReports库...
【标题】:“ireport + jasper的使用” 【描述】:在Java开发中,报表的生成和展示是一项重要任务,ireport和jasper是两个强大的报表工具,它们可以帮助开发者高效地设计、创建和管理复杂的报表。ireport是用于设计...
ireport+jasper报表,报表时项目中不可缺少的模块,我把前辈的东西拿来修改了一下终于实现了自定义报表。希望对大家有帮助,由于资源分不多了,因此3分就当做是辛苦分吧,代码详尽,数据库字段自己定义,有问题联系...
在本项目"JavaWeb_Ireport_Jasper_JavaBean_Mysql"中,开发者使用了这些技术来实现一个数据驱动的报表系统。 Ireport是一个流行的报表设计工具,它是JasperReports库的一部分,允许开发者通过直观的用户界面创建...
标签中提到的"jasper ireport jasper 报表"强调了JasperReports与IReport之间的关系。IReport是JasperReports的一个设计工具,两者结合使用可以实现报表的完整生命周期,从设计、预览到最终生成。 在压缩包中的...
iReport 是为JasperReports Library和JasperReports Server设计的报表可视化设计器。 iReport的遵循AGPL自由开源协议,在SourceForge.net开源社区发布
4. **编译和运行**:最后,保存报表模板,使用iReport的编译功能生成`.jasper`文件,然后在你的Java应用中引用这个报表,传递数据源并渲染报表。 对于描述中提及的“将小写金额转换成大小”,这通常涉及到数字到...
1. **安装插件**:iReport本身可能不直接支持二维码生成,所以我们需要安装相关的插件,如"jasperreports-extension",它包含JFreeChart和Qrcode4j等扩展,支持二维码的生成。 2. **设置数据源**:在iReport中,你...
主界面:extjs/jasper/pillars.jsp 最近研究了ireport画图形的功能,感觉中间走了很多歪路。想大家不要在重复走别人走过的歪路特此上传源码,供大家参考。还有我用的是oracle数据库 作者:castiel
1. 配置:在SpringMVC的配置文件中,添加iReport的相关依赖,确保在运行时能够正确加载和执行iReport的报表。 2. 数据准备:在Controller中,根据业务需求,收集并处理需要生成二维码的数据。 3. 设计模板:使用...
JasperServer, JasperETL, JasperReports, JasperStudio, iReport, and Jasper4 products are trademarks and/or registered trademarks of Jaspersoft Corporation in the United States and in jurisdictions ...
idempiere ERP和 jasper、ireport 集成文档
标题中的“ireport+jsp基于jasperReport 实现导出报表至web页面”是指使用iReport工具和JasperReport库,结合JavaServer Pages (JSP) 技术,来创建和展示动态报表,并能将这些报表导出到Web页面上供用户查看。...
### Jasper + iReport 集成报表到Web应用详解 #### 第一部分:下载与安装 在集成Jasper Report与iReport到Web应用之前,首要步骤是下载并安装所需的软件。iReport是Jasper Report的一个图形界面设计工具,主要用于...