iReport-5.6.0 结合 SpringBoot实现报告功能

                                                                                                                                                 

        iReport是一款非常强大的组件,针对于各种复杂的报告、单元页等,它完全适配Java语言,所以在组件内适用java代码。

        本次业务需要项目管理平台进行出报告模块,报告内置 柱状图,表格,图表等复杂组件,所以决定前端调用,后端出报告,并且返回。

注意:本次版本5.6.0,需要适配jdk1.6的版本,压缩在同级目录下,并在config文件进行配置即可。

一.下载

1. 链接

下载地址:https://sourceforge.net/projects/ireport/files/iReport/iReport-5.6.0/ 

下载zip可以直接解压

2. 配置

iReport 5.6.0 由于历史久远,最多支持jdk到1.7 ,如果你的本地jdk环境是1.8,打开会闪退; 所以需要自行准备jdk1.7 ,我这里准备的是jdk1.6

在etc的config文件进行jdk路径配置

二.基本操作

1、主体结构

title:标题

page header:页表头

column header:列表头

detail 1 :字段field(参与循环)

column footer:列底部

page footer:页底部

summary:总结或批注

每部分都有相应的功能,可针对于每页想输出的内容进行分区编写。

2、Report Inspector

这里存放的为各个分区里面的组件,可以根据需求进行右键设置,删除,增添。这里边重点有

parameters:参数,在编译时必须传参,页面根据传参而相应显示。

fields:属性字段,为所输入实体类中的属性。

variables:变量,大多存放页码,数量等。

dataset1:集合,下面table中会提及。

page header:表头。

detail:循环数据。

3.属性框

可以在这对,不同的组件和Inspector分区,进行属性的设置,包括:组件表达式express,输入框的颜色字体等,边框的虚实线等。

4.运行

Designer:分区与组件模式

xml:其实模板的实质是xml文件,可查看

preview:编写完成,预览

compile:在预览之后,即为编译按钮,可以根据编写的jrxml生成jasper文件,导入idea中可作为模板。

三、基本组件使用

1.Static Text(静态文本框):静态的文字

2.Text Field(文本域):进行属性设置格式为$F{字段},根据自行要求进行属性设置,field即为实体类字段。

3.Image(图片):进行引入,可以为流形式,测试可为绝对路径

注意:Image组件可以不选择任何图片文件直接选择取消,这就是"二维码"制作方法。

4.Current Date(当前时间):设置时间,可直接new 对象,设置pattern。

5、List
5.1、准备工作,创建所需集合。

5.2、进行配置。
6、table 报表的使用
6.1 选择已经有的表单或者新建,这里我选择以上我的表单。

6.2  设置所需字段,然后设置使用数据字段集合

6.3 、设计表头、列名、detail循环属性

6.4  编译生成:其中生成红色数据或者黑色数据,可在属性中pring when express 满足条件时,灵活显示,这里不多做介绍。

四、集成

1、maven 集成依赖
	  <!-- jasper报表依赖 -->
        <dependency>
            <groupId>net.sf.jasperreports</groupId>
            <artifactId>jasperreports</artifactId>
            <version>6.8.0</version>
            <exclusions>
                <exclusion>
                    <groupId>com.lowagie</groupId>
                    <artifactId>itext</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.lowagie</groupId>
            <artifactId>itext</artifactId>
            <version>2.1.7</version>
        </dependency>
        <dependency>
            <groupId>cn.lesper</groupId>
            <artifactId>iTextAsian</artifactId>
            <version>3.0</version>
        </dependency>
        <dependency>
            <groupId>org.codehaus.groovy</groupId>
            <artifactId>groovy-all</artifactId>
            <version>2.4.15</version>
        </dependency>

        <!-- mysql -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.34</version>
        </dependency>
    </dependencies>
2、代码

controller

service

util

jasper report 核心方法

五、总结

        总之,jasper-report 是一款强大兼容java的报告组件,但是对于模板的制作,以及配置集成的工作也是需要时间来沉淀。

       有问题大家可以多多交流! 

  • 21
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值