玩转 Jasper Report(1) Jaspersoft Studio 安装使用教程

1 摘要

Jasper Report 作为一个老牌的报表导出工具,具有集成度高、使用方便的特点。支持可视化拖拽操作。本文将介绍如何使用 Jasper 客户端 Jaspersoft Studio 导出 PDF。

必要环境参数:

JDK 1.8+

2 Jaspersoft Studio 下载安装

官网下载: https://community.jaspersoft.com/project/jaspersoft-studio/releases

第三方站点: https://sourceforge.net/projects/jasperstudio

官网需要注册账户,第三方不需要

3 导出PDF的完整示例

(1) 打开 Jasper Studio 软件,点击「新建图标」倒三角选择新建「Project」
在这里插入图片描述
(2) 选择新建 「JasperReports Project」,单击「Next」进入下一步

在这里插入图片描述
(3) 创建项目名称(英文与数字组合,不要包含中文),然后点击「Funish」完成

在这里插入图片描述
(4) 右键创建的项目名称,选择「Jasper Report」

一个项目支持多个模板
在这里插入图片描述
(5) 在弹出框中选择「Blank A4」 空白的A4模板,然后点击「Next」进入下一步

在这里插入图片描述
(6) 给模板起名,然后点击「Next」进入下一步

在这里插入图片描述
(7) 选择是否连接数据库
Jasper Studio 有两种模式,一种是连接数据库,直接从库中读取数据导出;另一种是无数据源的空白页导出,可根据需要进行选择;

这里以不连接数据库为例

在这里插入图片描述
(8) 点击「Funish」完成模板创建

在这里插入图片描述
(9) Jasper Studio 操作界面简介
在这里插入图片描述
(10) 拖动组件,开始布局

在这里插入图片描述
(11) 定义参数。右键「Parameters」,选择「Create Parameter」

在这里插入图片描述
(12) 设置参数名称和对应的Java类型
定义好的参数也可以直接拖动至布局界面
在这里插入图片描述
在这里插入图片描述
(13) 设置参数格式

通常日期、金额等需要设置指定的格式

在这里插入图片描述
在这里插入图片描述
(14) 打印预览。点击「Preview」进行预览,点击上方的执行按钮可解析文中设置的参数

在这里插入图片描述
(15) 导出PDF。点击保存旁边的倒三角符号,即可选择导出的格式,选择PDF即倒出为PDF文档

在这里插入图片描述

4 当前示例的 jasper 源码

点击设计界面下方的「Source」按钮,即可显示当前设计文档的源码,全选复制出即可

在这里插入图片描述
本示例的源码为:

<?xml version="1.0" encoding="UTF-8"?>
<!-- Created with Jaspersoft Studio version 6.16.0.final using JasperReports Library version 6.16.0-48579d909b7943b64690c65c71e07e0b80981928  -->
<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="demo1" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="a8a25ce3-8f10-4c23-8301-3e6f91200ff1">
	<property name="com.jaspersoft.studio.data.defaultdataadapter" value="One Empty Record"/>
	<parameter name="score" class="java.lang.Integer">
		<parameterDescription><![CDATA[得分]]></parameterDescription>
	</parameter>
	<parameter name="amount" class="java.math.BigDecimal">
		<parameterDescription><![CDATA[金额]]></parameterDescription>
	</parameter>
	<queryString>
		<![CDATA[]]>
	</queryString>
	<background>
		<band splitType="Stretch"/>
	</background>
	<title>
		<band height="80" splitType="Stretch">
			<property name="com.jaspersoft.studio.unit.height" value="px"/>
			<staticText>
				<reportElement x="150" y="15" width="405" height="50" uuid="f5a1f402-29a5-45d9-be9e-0d5111367660">
					<property name="com.jaspersoft.studio.unit.x" value="px"/>
					<property name="com.jaspersoft.studio.unit.y" value="px"/>
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
					<property name="com.jaspersoft.studio.unit.height" value="px"/>
				</reportElement>
				<box>
					<topPen lineWidth="1.0" lineStyle="Solid" lineColor="#000000"/>
					<leftPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
					<bottomPen lineWidth="1.0" lineStyle="Solid" lineColor="#000000"/>
					<rightPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
				</box>
				<textElement textAlignment="Center" verticalAlignment="Middle">
					<font size="20"/>
				</textElement>
				<text><![CDATA[这是一个PDF导出示例文档]]></text>
			</staticText>
			<componentElement>
				<reportElement x="0" y="0" width="120" height="80" uuid="0861800b-4755-407c-ab4d-4ea2f76b0f56">
					<property name="com.jaspersoft.studio.unit.x" value="px"/>
					<property name="com.jaspersoft.studio.unit.y" value="px"/>
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
					<property name="com.jaspersoft.studio.unit.height" value="px"/>
				</reportElement>
				<jr:QRCode xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd">
					<jr:codeExpression><![CDATA["Hello World"]]></jr:codeExpression>
				</jr:QRCode>
			</componentElement>
		</band>
	</title>
	<detail>
		<band height="700" splitType="Stretch">
			<property name="com.jaspersoft.studio.unit.height" value="px"/>
			<staticText>
				<reportElement x="0" y="0" width="550" height="300" uuid="582c96dc-c028-4e92-88f3-f1cfc0c32f11">
					<property name="com.jaspersoft.studio.unit.x" value="px"/>
					<property name="com.jaspersoft.studio.unit.y" value="px"/>
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
					<property name="com.jaspersoft.studio.unit.height" value="px"/>
					<property name="com.jaspersoft.studio.unit.firstLineIndent" value="px"/>
					<property name="com.jaspersoft.studio.unit.spacingAfter" value="px"/>
				</reportElement>
				<textElement>
					<font size="16"/>
					<paragraph lineSpacing="1_1_2" lineSpacingSize="1.0" firstLineIndent="10" spacingAfter="10"/>
				</textElement>
				<text><![CDATA[JasperReports Server is a stand-alone and embeddable reporting server. It provides reporting and analytics that can be embedded into a web or mobile application as well as operate as a central information hub for the enterprise by delivering mission critical information on a real-time or scheduled basis to the browser, mobile device, or email inbox in a variety of file formats. JasperReports Server is optimized to share, secure, and centrally manage your Jaspersoft reports and analytic views.
从前有座山.山里有座庙.庙里有个老和尚和小和尚.老和尚对小和尚说:“从前有座山.山里有座庙.庙里有个老和尚和小和尚.老和尚对小和尚说:"从前有座山.山里有座庙.庙里有个老和尚和小和尚.老和尚对小和尚说:……”

]]></text>
			</staticText>
			<textField pattern="yyyy-MM-dd HH:mm:ss">
				<reportElement x="80" y="350" width="200" height="30" uuid="5d3db036-b3cb-4978-bcda-82641f27057e">
					<property name="com.jaspersoft.studio.unit.x" value="px"/>
					<property name="com.jaspersoft.studio.unit.y" value="px"/>
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
				</reportElement>
				<textElement verticalAlignment="Middle">
					<font size="16"/>
				</textElement>
				<textFieldExpression><![CDATA[new java.util.Date()]]></textFieldExpression>
			</textField>
			<staticText>
				<reportElement x="0" y="350" width="80" height="30" uuid="dc3d91cd-1fad-4768-ab9f-c05d9ca36837">
					<property name="com.jaspersoft.studio.unit.x" value="px"/>
					<property name="com.jaspersoft.studio.unit.y" value="px"/>
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
				</reportElement>
				<textElement textAlignment="Left" verticalAlignment="Middle">
					<font size="16"/>
				</textElement>
				<text><![CDATA[当前时间:]]></text>
			</staticText>
			<staticText>
				<reportElement x="0" y="380" width="80" height="30" uuid="22af01b1-a7a1-4af5-9648-e60c975fec6e">
					<property name="com.jaspersoft.studio.unit.x" value="px"/>
					<property name="com.jaspersoft.studio.unit.y" value="px"/>
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
				</reportElement>
				<textElement verticalAlignment="Middle">
					<font size="16"/>
				</textElement>
				<text><![CDATA[得分:]]></text>
			</staticText>
			<textField>
				<reportElement x="80" y="380" width="200" height="30" uuid="f3e787ca-5972-48f3-8b26-e0fb1dfed3f5">
					<property name="com.jaspersoft.studio.unit.x" value="px"/>
					<property name="com.jaspersoft.studio.unit.y" value="px"/>
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
				</reportElement>
				<textElement verticalAlignment="Middle">
					<font size="16" isBold="true"/>
				</textElement>
				<textFieldExpression><![CDATA[$P{score}]]></textFieldExpression>
			</textField>
			<staticText>
				<reportElement x="0" y="410" width="80" height="30" uuid="e9cc6eb8-0881-4ffc-a300-327efdf74e25">
					<property name="com.jaspersoft.studio.unit.x" value="px"/>
					<property name="com.jaspersoft.studio.unit.y" value="px"/>
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
				</reportElement>
				<textElement verticalAlignment="Middle">
					<font size="16"/>
				</textElement>
				<text><![CDATA[金额:]]></text>
			</staticText>
			<textField pattern="#,###.000000">
				<reportElement x="80" y="410" width="200" height="30" uuid="0b7c3589-0309-43af-8c5b-dcc13447af3f">
					<property name="com.jaspersoft.studio.unit.x" value="px"/>
					<property name="com.jaspersoft.studio.unit.y" value="px"/>
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
				</reportElement>
				<textElement verticalAlignment="Middle">
					<font size="16"/>
				</textElement>
				<textFieldExpression><![CDATA[$P{amount}]]></textFieldExpression>
			</textField>
		</band>
	</detail>
</jasperReport>

至此,Jasper Report 的入门教程已经完成

5 推荐参考资料

Jaspersoft Studio 可视化编辑器下载

TIBCO Jaspersoft Studio 报表软件使用教程

How do I format a number as 2.564.894.621 in JasperSoft Studio?

  • 5
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值