1、JasperReports简介

  1. JaspersoftCommunity Jasper 产品列表

Ø JasperReportsServer

Ø JaspersoftStudio

Ø JasperReports Library

Ø JaspersoftETL

Ø Visualize.js

  1. JasperReports介绍

JasperReports是一个基于Java的开源报表工具,它可以在Java环境下像其它IDE报表工具一样来制作报表。JasperReports 支持PDF、HTML、XLS、CSV和XML文件输出格式。JasperReports是当前Java开发者最常用的报表工具。

  1. JasperReportsLicense授权

Provider: JaspersoftCorporation

Category:

License: LGPL

即是说,可以免费使用JasperReports开发产品,而不公开产品源代码。但有个前提:如果对JasperReports源码进行了修改或衍生,则必须公开整个产品的源码。

  1. 官网网址:

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编写

  1. 新建报表

【文件】à【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

完成

  1. 创建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,并关闭窗口

  1. 设置报表主要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,相应的结果集的列会出现在下方

  1. 报表结构

  2. 在Detail中使用SQL结果

  3. 使用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

  4. 使用报表外部参数

右键【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报表生成

  1. 引用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>
  1. 使用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简易入门教程--亲测有效相关推荐

  1. geonode geoserver win10 安装教程(亲测)

    geonode geoserver  win10 安装教程(亲测) 目录 0. geonode简介 1.相关链接 2.安装步骤 3. 遇到的坑 0. geonode简介 GeoNode 是一个地理空间 ...

  2. layui个人中心html,Layui的简易入门教程

    layui是一款采用自身模块规范编写的前端UI框架,非常适合界面的快速开发.本篇文章给大家分享一下Layui的简易入门教程,介绍一下layui如何在你的项目中使用. 获得 layui 后,将其完整地部 ...

  3. Fiddler修改返回数据教程,亲测有效

    Fiddler修改返回数据教程,亲测有效!!! 1.首先手机连接好代理进行抓包,触发你要改的那个接口,选中它,按alt+F11打断点 这个时候fiddler左下角会出现一个红色图标,如图: 2.重新触 ...

  4. flash player安装教程--亲测有效

    flash player安装教程--亲测有效 安装步骤 平日工作中 经常会遇到视频播放有问题,此时,一般提示安装flash player,但是按照提示步骤 根本不起作用,毫无思路,此时可参考我的安装步 ...

  5. WebODM win10安装教程(亲测)

    WebODM win10安装教程(亲测) 目录 0.为什么要用WebODM 1.参考链接 2.安装步骤 0.为什么要用WebODM 用于航拍图像生成三维重建.三维建模等,界面更简单(比较命令行方式)! ...

  6. 最新视频打赏系统全开源+附教程/亲测可用

    正文: 最新视频打赏系统全开源+附教程/亲测,这套系统是我从别人那里拿到的,100%完整可用,今天测试防红失效了,需要修改防红API即可,程序仅供研究学习使用. 程序: lanzou.com/iSFj ...

  7. Vue下载安装步骤的详细教程(亲测有效) 2 安装与创建默认项目

    上篇请移步到Vue下载安装步骤的详细教程(亲测有效) 1_水w的博客-CSDN博客 上一篇博文已经对Node.js的安装与配置进行了详细介绍. 另外:文中项目存放的路径及项目名称可根据自身实际情况进行 ...

  8. 2022最新视频打赏系统全开源版本+附教程/亲测可用

    正文: 最新视频打赏系统全开源+附教程/亲测,这套系统是我从别人那里拿到的,100%完整可用,今天测试防红失效了,需要修改防红API即可,程序仅供研究学习使用. 程序的全部演示图放到压缩包了,有兴趣的 ...

  9. Markdown 简易入门教程

    自己整理的 Markdown 简介.编辑器推荐.语法.特征等,是 Markdown 的简易入门教程 目录 概述 简介 官方文档 Markdown编辑器 初级语法 标题 粗体和斜体 段落和换行 分隔线 ...

最新文章

  1. 自己写的程序密码功能 ------数字功能
  2. Design Pattern - Abstract Factory(C#)
  3. Koadic的安装和使用---http c2远控工具
  4. 常用邮件客户端软件设置
  5. pandas中的DataFrame转化为dict
  6. apk转换ipa在线转换工具_PDF 格式转换在线网站
  7. Linux软件安装——安装软件的命令
  8. Spring入门之一-------实现一个简单的IoC
  9. 苹果手机时区改不了怎么办_苹果日期和时间怎么修改不了
  10. oracle怎么执行存储过程_分享一个分析Oracle存储过程性能小技巧
  11. 用计算机模仿真实系统的技术叫,计算机模拟技术.pdf
  12. 动态ip解析 linux,ddwrt路由/linux动态解析ip(ddns)到dnspod配置
  13. web自动化测试python+selenium学习总结----selenium安装、浏览器驱动下载
  14. 新版PassXYZ已上线,新增一次性密码(OTP)管理功能
  15. JavaSE(J2SE)入门学习笔记(二)
  16. WPS删除粘贴后的[]中括号痕迹
  17. java文件转二进制
  18. 蚂蚁金服 Service Mesh 深度实践
  19. 【Webpack】1256- 硬核解析 Webpack 事件流核心!
  20. 6-2 两个字符串穿插 (10 分)

热门文章

  1. 24小时内最快跑完最详细BSC全节点搭建同步实战
  2. 根据CSDN大数据进行涨粉的方法探讨
  3. CPU缓存——L1+L2详解
  4. Linux下C编程入门(1)
  5. 个人知识管理是职场必修课
  6. 此微信由于恶意攻击服务器,微信支付存在漏洞,可导致商家服务器被入侵【漏洞已复现】...
  7. A2dp连接流程(android8及之前版本)
  8. 人人都是产品经理02-06章摘要
  9. 五十个html js特效动画,html5 canvas酷炫的月食动画特效
  10. linux系统哪个好用