Jasperreport 基础教程

Jasperreport## 标题基础教程

下载地址:https://community.jaspersoft.com/community-download

1.标题创建项目及文件

1.1 打开Jaspersoft Studio工具,点击File->New->Project先创建一个项目

在这里插入图片描述
然后填写项目名字为demo,创建一个名叫demo的项目
在这里插入图片描述

1.2 点击File->New->Jasper Report(也可以直接在demo项目上右键New->Jasper Report),选择一个竖向A4纸大小的模板

在这里插入图片描述
Data Adapter可以选择 One Empty Record 选项,即空数据源,完成后就创建好了第一个模板
在这里插入图片描述

2. 模板设计界面区域说明

2.1中间的模板设计区域分别多个band,这些band都可以右键删除

Title:标题区,如果数据有多页只会在第一页打印
Page Header:页头区,多页的情况下每页都会打印
Column Header:列头区,配合下面的Detail区打印列表数据,多页的情况下每页都会打印
Detail:可以新增多个Detail区,可以组合打印出多个列表数据,多页的情况下每页都会打印
Column Footer:列表底部区,多页的情况下每页都会打印
Page Footer:页底部区,多页的情况下每页都会打印
Summary:合计区,只会在最后一页打印
在这里插入图片描述

3. 添加报表元素

3.1先从右侧Basic Elements区域拖拽一个Static Text元素到Title区,可以任意调整元素的大小和位置,双击可以修改元素要显示的内容,选中元素后,可以在右侧设置元素的边框,字体和大小,文本的对齐方式等等。

在这里插入图片描述

3.2在左侧Outline区域Paramters上右键Create Paramter创建一个新的属性,命名为name,类型java.lang.String

在这里插入图片描述

3.3拖拽name属性到Page Header区域,同样可以在右侧设置它的属性

在这里插入图片描述

4.属性解析

4.1基础元素

线(Line)、矩形(Rectangle)、椭圆(Ellipse)、静态文本(Static Text)、字段文本(Text field)、图片(Image)、框架(Frame)、子报表(Subreport)、交叉报表(Crosstab)、图表(Chart)、段落之间的空白(Break)
元素列表面板:
在这里插入图片描述
元素列表面板又分为两个子面板:
在这里插入图片描述

4.2元素的属性

元素的具体属性依赖于具体的元素类型,下面是矩形元素的属性视图:
在这里插入图片描述
在这里插入图片描述

5. 元素的插入、选择以及位置调整

5.1插入元素

用鼠标从 Palette 中拖拽出需要的元素,放到栏内,这时的元素会有一个默认的宽度大小。然后就可以使用鼠标来调整这个元素的高度与宽度啦:
在这里插入图片描述

5.2选中多个元素

使用鼠标在你所需要选中的多个元素外围,画一个大矩形,把这些元素都包围在内,就可以一次性选中多个元素:
在这里插入图片描述
注意,选中多个元素后,它们的 properties 面板就只会展示这些元素所共同拥有的属性!
在这里插入图片描述

5.3调整元素位置

默认会在背景中展示 Grid 的小格子,这可以在 View -> Show Grid 中进行控制。默认会让元素紧贴着这些小格子,这可以在 View -> Snap to Grid 中进行控制,Grid Size调整格子大小
在这里插入图片描述

5.4元素布局

有四种容器布局:自由布局(Free layout),默认。水平布局(Horizontal layout)。垂直布局(Vertical layout)。网格布局(Grid layout)。有两种方式可以选择容器布局:
1.右键选择某个容器,然后选择 “Arrange In Container”,最后再选择你想要的容器布局。在这里插入图片描述
2.先选择某个容器,然后在相应容器的 Properties 面板中,Appearance->Layout 中进行下拉选择即可:
在这里插入图片描述

5.5格式化元素

右键选择某个元素,在上下文菜单中就能看到格式化工具项

5.5.1调整所在层(Order)

在这里插入图片描述

5.5.2容器内的对齐方式(Align in Container)

在这里插入图片描述

5.5.3调整大小(Size to Container)

在这里插入图片描述

5.5.4 其他

在这里插入图片描述

5.6文本字段元素

文本字段表达式(text field expression)的 class 类型可以是这些:
在这里插入图片描述
除了表达式(Expression)之外,文本字段元素还有这些属性:
在这里插入图片描述
在这里插入图片描述
static text:这个组件用到的最多的就是字体设置,还有边框设置,不多介绍,看看就懂了。字体的大小,上下左右的对齐方式在顶部设置
在这里插入图片描述
Text Feild:这个地方与static text基本属性设置并无差异,有几个地方需要注意一下
在这里插入图片描述
expression:就是即将在这个文本框显示的东西,这个表达式点开后可以选择参数(parameters),函数变量(variable),数据库字段(fields),还可以是自由组织的其他数据,比如两个字符字符串拼接,两个数字类型做计算,基本的Java表达式都可以用在里面。
black when null:必须勾选,方当某个表达式结果时null时页面会把null打印在页面,既不美观,勾选后会打印空白。
pattern:当表达式的结果是日期、时间、金钱等可以可格式化的数据时,可以对原数据格式化,比如yyyy-MM-dd等,这是最常用的。

6. 纸张属性

1. 纸张:点击报表,如图所示打开报表的设计页面,如图:

在这里插入图片描述
看一下纸张最常用的属性:
在这里插入图片描述
When no data type,是指当数据库查出来的数据是空时显示什么,默认显示的是一张白纸,开发的时候为了好看和美观我们一般选择下面这个属性
在这里插入图片描述
这个的意思是除了数据区域不显示,其余的都显示,这样我们会看到报表的表头标题等内容,比较美观。
下面这两个属性也有用到
在这里插入图片描述
这两个属性分别设置标题和结尾是否在新的页面显,依据需求来定,当报表很多的时候会这么做,标题相当于报表的封面,summary相当与报表总结。
还有一个属性就是ignore pagination,就是忽略分页,报表以一个整体的结构显示,不会出现按照纸张大小分页。
下面这个用来编辑纸张大小和纸张方向(纵向,横向),当报表很长,A4大小不足以容纳的时候会用到。

在这里插入图片描述
在这里插入图片描述

7.函数

1. 创建一些统计函数用来统计数据,比如求和,求平均等等。如图:

在这里插入图片描述

2.页脚设置

创建一个Text Field 在这里插入图片描述
双击获取编辑页面,双击PAGE_NUMBER获取变量
在这里插入图片描述
在这里插入图片描述
编辑页脚属性
在这里插入图片描述
样式可自定义:在这里插入图片描述
插入图片:创建参数image,类型String,图片表达式获取数据方式:
new ByteArrayInputStream(org.apache.commons.codec.binary.Base64.decodeBase64($P{image}.getBytes()))
在这里插入图片描述
在这里插入图片描述
后端代码实现:Base64导包:import org.apache.commons.codec.binary.Base64;
//测试
// 读取图片字节数组

ClassPathResource pathResource = new ClassPathResource("a.jpeg");
InputStream inputStream = pathResource.getInputStream();
byte[] data = new byte[inputStream.available()];
inputStream.read(data);
inputStream.close();
Base64 base64 = new Base64();
byte[] encode = base64.encode(data);
parameters.put("image", StringUtils.newStringUtf8(encode));//获得为图片设置的参数,把图片传给这个参数
  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值