Jasperreport+studio设计报表教程(二)--工作流程简介

上章做了许多的准备工作,现在该说明用Jasperreport生成报表的工作流程了。
这里写图片描述
1. JRXML:报表填充模板,本质是一个XML.
2. Jasper:由JRXML模板编译生成的二进制文件,用于代码填充数据。
3. Jrprint:当用数据填充完Jasper后生成的文件,用于输出报表。
4. Exporter:决定要输出的报表为何种格式,报表输出的管理类。
5. Jasperreport可以输出多种格式的报表文件,常见的有Html,PDF,xls等

模板生成:JRXML

模板生成我们用Jaspersoft studio6.3.1进行可视化编写,这个软件代替了以前的IReport进行Jasperreport的模板生成。上一章我们已经安装好这个软件,现在将它打开。
这里写图片描述
有没发现跟Eclipse很像,没错这是基于Eclipse开发的开源软件,熟悉Eclipse的同学相信很快上手。

新建一个报表模板

这里写图片描述

选择一个页面布局的模板,这里选了一个空的A4纸大小的模板。
这里写图片描述

点击Next,命名模板。
这里写图片描述

点击Next,出现一个创建数据源的选项,在报表模板设计中,数据源可以是数据库,也可以是一个实体类集合(javaBean)。在这里我们点击New选择一个空的数据库,现阶段我们实现简单的功能还不用用到数据源,后面会详细介绍如何连接到数据库与实体类集合。
这里写图片描述
对数据源进行命名,点击Finish完成。
这里写图片描述
回到原来窗口,点击Finish,模板创建完毕.
这里写图片描述

完成之后,可以看到JRXML的结构图,工具栏与Eclipse开发Java程序一致
这里写图片描述

首先观察模板的Outline,有助于我们了解Jrxml设计的要素
这里写图片描述

  1. Styles:可以引用的布局风格
  2. Parameters:报表的参数,可由外部传入数据填充。
  3. Fields:域、字段,由上面关联的数据库或实体类所产生。
  4. Sort Fields:对字段进行排序筛选后的字段。
  5. Variables:变量,可以创建变量来进行一些数学计算。
  6. Scriptlets:报表模板实质是一个标签语言,故也可以使用脚本语言。
  7. 文档结构区:
    • Title:标题是首先看到的区域,它只被创建一次,可被打印在单独的页面上。标题不可能超过报表的设计高度(不包括顶底部边距)。
    • Page Header:页眉区域,高度一般不会在设计过程中发生改变,除非插入可调整大小的组件(如文本)。页眉出现在所有打印界面设定好的区域,如标题和摘要打印在另一个单独的页面则不会包括页眉区域。
    • Column Header:表头被打印在第一个细节列表的开始位置,通常作为列表会被插入在这个区域。
    • Detail:一般用于显示表格,可以包含多个表格。
    • Column Footer:表尾区域出现在第一列的末尾,它的尺寸在运行时不可调整大小。
    • Page Footer:页脚,出现在有页眉的页面,在运行时不可改变大小。
    • Last Page Footer:如果你想让最后一页页脚不同于其他的页脚,就可以使用特殊的最后一页页脚乐队。如果区域高度为0会被完全忽略了,常用于最后一页。
    • Summary:摘要区域允许你插入字段总数,方法,或者任何想在报告中包括的信息。
    • No Data:无数据。
    • Background:背景使您能够创建水印和类似的效果,如一个框架
      在整个页面。它可以有一个最大高度等于页面高度。

查看JRXML源码
点击页面下方Desing旁边的Source可以看到JRXML的源码,从中可以看到源码就是由标签语言组成,一个个标签构成了模板的各个元素,可以从源码里对模板进行更加细致的设计。

<?xml version="1.0" encoding="UTF-8"?> 

<!-- Created with Jaspersoft Studio version 6.3.1.final using JasperReports Library version 6.3.1  --> 

<!-- 2017-02-21T19:13:07 --> 

<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="JasperSample" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="a2d74768-b0f9-4388-a9ab-d79179e0928f"> 

    <property  

//数据源的设置 

name="com.jaspersoft.studio.data.defaultdataadapter" value="MyAdapter"/> 

//如果是数据库,则可以设置查询语句 

    <queryString> 

        <![CDATA[]]> 

    </queryString> 

    <background> 

        <band splitType="Stretch"/> 

    </background> 

    <title> 

        <band height="79" splitType="Stretch"/> 

    </title> 

    <pageHeader> 

        <band height="35" splitType="Stretch"/> 

    </pageHeader> 

    <columnHeader> 

        <band height="61" splitType="Stretch"/> 

    </columnHeader> 

    <detail> 

        <band height="125" splitType="Stretch"/> 

    </detail> 

    <columnFooter> 

        <band height="45" splitType="Stretch"/> 

    </columnFooter> 

    <pageFooter> 

        <band height="54" splitType="Stretch"/> 

    </pageFooter> 

    <summary> 

        <band height="42" splitType="Stretch"/> 

    </summary> 

</jasperReport> 


 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值