JasperReport简易入门教程--亲测有效
1、JasperReports简介
- JaspersoftCommunity Jasper 产品列表
Ø JasperReportsServer
Ø JaspersoftStudio
Ø JasperReports Library
Ø JaspersoftETL
Ø Visualize.js
- JasperReports介绍
JasperReports是一个基于Java的开源报表工具,它可以在Java环境下像其它IDE报表工具一样来制作报表。JasperReports 支持PDF、HTML、XLS、CSV和XML文件输出格式。JasperReports是当前Java开发者最常用的报表工具。
- JasperReportsLicense授权
Provider: JaspersoftCorporation
Category:
License: LGPL
即是说,可以免费使用JasperReports开发产品,而不公开产品源代码。但有个前提:如果对JasperReports源码进行了修改或衍生,则必须公开整个产品的源码。
- 官网网址:
http://community.jaspersoft.com/project/jasperreports-library
2、iReport工具简介
iReport也是开源组织sf.net中的一款免费软件,是为JasperReport设计的强大的,直观的,易于使用的可视化报表设计器,采用纯Java开发。这个工具允许用户可视化编辑包含charts、图片、子报表等的复杂报表。iReport 还集成了JFreeChart图表制作包,允许用户可视化地编辑XML(JasperDesign)文件。用于打印的数据可以通过多种方式获取包括:JDBC,TableModels, JavaBeans, XML,Hibernate(支持HQL查询语言), CSV等。它支持多种输出格式包括:PDF,RTF,XML,XLS,CSV,HTM。
注意下载的iReport一定要与你所使用的JasperReport 版本相匹配
下载地址:
https://sourceforge.net/projects/ireport/files/?source=navbar
下载安装后,可以iReport文件夹中,可以找到它对应的JasperReports library.
3、iReport报表绘制
不同版本的iReport在界面上会存在一些差异,以下文档基于iReport-5.5.0编写
- 新建报表
【文件】à【New…】
选择一个模版,【Openthis Template】
通过【Browse】选择文件保存位置,并填写报表名称【Report name】
![在这里插入图片描述](https://img-blog.csdnimg.cn/2021011310162225.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDI2MzgyOQ==,size_16,color_FFFFFF,t_70
完成
- 创建Database Sources
点击【ReportDatasources】图标
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113101659761.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDI2MzgyOQ==,size_16,color_FFFFFF,t_70
【New】
选择一个datasourcetype,这里选【Database JDBC connection】
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113101726883.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDI2MzgyOQ==,size_16,color_FFFFFF,t_70
填写数据库连续的相关信息,并保存
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113101745677.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDI2MzgyOQ==,size_16,color_FFFFFF,t_70
勾选默认Datasources,并关闭窗口
- 设置报表主要SQL
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113101812278.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDI2MzgyOQ==,size_16,color_FFFFFF,t_70
输入主要SQL,相应的结果集的列会出现在下方
报表结构
在Detail中使用SQL结果
使用iReport内置变量
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210113101920678.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MDI2MzgyOQ==,size_16,color_FFFFFF,t_70使用报表外部参数
右键【Parameters】,选择【添加Parameter】
通过右侧的【属性面板】修改参数名称,并拖动到报表中
8) 使用Dateset 创建汇总报表 (次要SQL)
右键【报表名称】(比如report_test002),选择【Add Dataset】
填写Dataset名称,【下一步】
选择DataSources,并填写SQL语句
选择要使用的列,并【下一步】
使用Group组自动Group up,也可通过SQL进行Group up
通过【窗口–>组件面板】打开组件面板
拖动Chart图标到报表中
选择一个图表类型,【OK】
选择要使用的DataSet(比如上文刚刚创建的myDataSet1)
填写Series描述
通过右侧按钮填写横坐标分组组名,即分组值
9) 预览报表
通过【预览】图标查看报表结果(如果图形没有生成也没有事,最终输出会生成)
如果有外部参数,将会弹出提示框要求录入
看到报表结果,可以通过【Designer】图标返回到设计界面
10)编译报表
通过【编译】图标,可以对报表进行编译
编译后,同个目录下,可以找到编译后的文件:
比如,report_test002.jasper
4、Java报表生成
- 引用JasperReports Library
在Java Project中引入Jasper相关的jar包。(当然也需要DB 驱动的jar)
以下提供JasperReports 6.2.1版本的maven配置
<dependency><groupId>net.sf.jasperreports</groupId><artifactId>jasperreports</artifactId><version>6.2.1</version></dependency><dependency><groupId>org.codehaus.groovy</groupId><artifactId>groovy-all</artifactId><version>2.4.7</version></dependency><dependency><groupId>com.lowagie</groupId><artifactId>itext</artifactId><version>2.1.7</version></dependency>
mysql驱动的Maven配置
<!-- mysql驱动 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.38</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.9</version></dependency>
- 使用JasperReports Library导出文件
public class JasperReportsDemo001 {public static void main(String[] args)throws Exception {//加载DB驱动,并获得DB连接Class.forName("com.mysql.jdbc.Driver");String url = "jdbc:mysql://114.67.141.80:3306/estate_dev?useUnicode=true&characterEncoding=UTF-8";String user = "sja_dev";String password = "sja_dev_123";Connection conn = DriverManager.getConnection(url, user, password);//设定报表所需要的外部参数内容Map<String, Object> rptParameters = new HashMap<String, Object>();rptParameters.put("myParam", "hello world");//传入报表源文件绝对路径,外部参数对象,DB连接,得到JasperPring对象JasperPrint jasperPrint = JasperFillManager.fillReport("C:/Users/Administrator/Desktop/jasper_test/report1.jasper", rptParameters, conn);//导出PDF文件JasperExportManager.exportReportToPdfFile(jasperPrint, "C:/Users/Administrator/Desktop/jasper_test/test.pdf");//导入HTML文件JasperExportManager.exportReportToHtmlFile(jasperPrint, "C:/Users/Administrator/Desktop/jasper_test/test.html");//执行结束System.out.println("Export success!!");}
}
附上工具连接
链接: https://pan.baidu.com/s/1DDm4jA2tXMggw3trDw0RqQ
提取码: nn9i
切记工具依赖于jdk jdk1.8用不了,会闪退,打不开。jdk1.6,1.7可以用,所以如果你用的是1.8,得去重新安装低版本环境了
JasperReport简易入门教程--亲测有效相关推荐
- geonode geoserver win10 安装教程(亲测)
geonode geoserver win10 安装教程(亲测) 目录 0. geonode简介 1.相关链接 2.安装步骤 3. 遇到的坑 0. geonode简介 GeoNode 是一个地理空间 ...
- layui个人中心html,Layui的简易入门教程
layui是一款采用自身模块规范编写的前端UI框架,非常适合界面的快速开发.本篇文章给大家分享一下Layui的简易入门教程,介绍一下layui如何在你的项目中使用. 获得 layui 后,将其完整地部 ...
- Fiddler修改返回数据教程,亲测有效
Fiddler修改返回数据教程,亲测有效!!! 1.首先手机连接好代理进行抓包,触发你要改的那个接口,选中它,按alt+F11打断点 这个时候fiddler左下角会出现一个红色图标,如图: 2.重新触 ...
- flash player安装教程--亲测有效
flash player安装教程--亲测有效 安装步骤 平日工作中 经常会遇到视频播放有问题,此时,一般提示安装flash player,但是按照提示步骤 根本不起作用,毫无思路,此时可参考我的安装步 ...
- WebODM win10安装教程(亲测)
WebODM win10安装教程(亲测) 目录 0.为什么要用WebODM 1.参考链接 2.安装步骤 0.为什么要用WebODM 用于航拍图像生成三维重建.三维建模等,界面更简单(比较命令行方式)! ...
- 最新视频打赏系统全开源+附教程/亲测可用
正文: 最新视频打赏系统全开源+附教程/亲测,这套系统是我从别人那里拿到的,100%完整可用,今天测试防红失效了,需要修改防红API即可,程序仅供研究学习使用. 程序: lanzou.com/iSFj ...
- Vue下载安装步骤的详细教程(亲测有效) 2 安装与创建默认项目
上篇请移步到Vue下载安装步骤的详细教程(亲测有效) 1_水w的博客-CSDN博客 上一篇博文已经对Node.js的安装与配置进行了详细介绍. 另外:文中项目存放的路径及项目名称可根据自身实际情况进行 ...
- 2022最新视频打赏系统全开源版本+附教程/亲测可用
正文: 最新视频打赏系统全开源+附教程/亲测,这套系统是我从别人那里拿到的,100%完整可用,今天测试防红失效了,需要修改防红API即可,程序仅供研究学习使用. 程序的全部演示图放到压缩包了,有兴趣的 ...
- Markdown 简易入门教程
自己整理的 Markdown 简介.编辑器推荐.语法.特征等,是 Markdown 的简易入门教程 目录 概述 简介 官方文档 Markdown编辑器 初级语法 标题 粗体和斜体 段落和换行 分隔线 ...
最新文章
- 自己写的程序密码功能 ------数字功能
- Design Pattern - Abstract Factory(C#)
- Koadic的安装和使用---http c2远控工具
- 常用邮件客户端软件设置
- pandas中的DataFrame转化为dict
- apk转换ipa在线转换工具_PDF 格式转换在线网站
- Linux软件安装——安装软件的命令
- Spring入门之一-------实现一个简单的IoC
- 苹果手机时区改不了怎么办_苹果日期和时间怎么修改不了
- oracle怎么执行存储过程_分享一个分析Oracle存储过程性能小技巧
- 用计算机模仿真实系统的技术叫,计算机模拟技术.pdf
- 动态ip解析 linux,ddwrt路由/linux动态解析ip(ddns)到dnspod配置
- web自动化测试python+selenium学习总结----selenium安装、浏览器驱动下载
- 新版PassXYZ已上线,新增一次性密码(OTP)管理功能
- JavaSE(J2SE)入门学习笔记(二)
- WPS删除粘贴后的[]中括号痕迹
- java文件转二进制
- 蚂蚁金服 Service Mesh 深度实践
- 【Webpack】1256- 硬核解析 Webpack 事件流核心!
- 6-2 两个字符串穿插 (10 分)