JasperReports - Настройка среды
JasperReports - это чистая библиотека Java, а не отдельное приложение. Он не может работать сам по себе, поэтому его необходимо встроить в другое клиентское или серверное Java-приложение. Поскольку он основан на Java, его можно запустить на любой платформе, поддерживающей Java (JDK 1.3 и выше). Все функции JasperReport собраны в одном файле JAR, jasperreports-xxxjar. Этот JAR вместе с необходимыми и дополнительными библиотеками (файл .ZIP) можно загрузить с сайта: Ссылка на библиотеку JasperReport . Загрузите последнюю версию по этой ссылке.
ZIP-файл включает JAR-файл JasperReports вместе с исходным кодом JasperReports, зависимыми JAR-файлами и множеством примеров, демонстрирующих функциональные возможности JasperReport.
Среда JasperReport
Чтобы приступить к созданию отчетов, нам нужно настроить среду. Распакуйте загруженный файл JasperReport.ZIP в любое место (в нашем случае мы извлекли его в C: \ tools \ jasperreports-5.0.1). Структура каталогов извлеченного файла такая же, как показано ниже -
Вот подробности всех каталогов -
build - содержит скомпилированные файлы классов JasperReport.
demo - содержит различные примеры, демонстрирующие несколько аспектов функциональности JasperReports.
dist - содержит файл jasperreports-xxxjar. Мы добавим этот JAR-файл в наш CLASSPATH, чтобы воспользоваться преимуществами JasperReports.
docs - содержит локальную копию документации JasperReports.
lib - содержит все файлы JAR, необходимые как для создания отчетов JasperReports, так и для их использования в наших приложениях.
src - содержит исходный код JasperReports.
build.xml - файл сборки ANT для сборки исходного кода JasperReports. Если мы не собираемся изменять JasperReports, нам не нужно использовать этот файл, поскольку JasperReports распространяется в скомпилированной форме.
changes.txt - текстовый документ, объясняющий различия между текущей и предыдущей версиями библиотеки классов JasperReports.
license.txt - текстовый документ, содержащий полный текст лицензии LGPL (Lesser General Public License).
readme.txt - текстовый документ, содержащий инструкции по созданию и выполнению предоставленных примеров.
По сути, мы используем только jasperreports-xxxjar в dist и JAR в каталоге lib для создания отчетов. Поскольку JasperReports является инструментом с открытым исходным кодом, если во время выполнения в jasperreports-xxxjar обнаруживается какой-либо дефект или ошибка, мы можем исправить это и снова построить JAR, используя файл build.xml.
Установите CLASSPATH
Чтобы использовать JasperReport, нам нужно установить следующие файлы в наш CLASSPATH -
jasperreports-xxxjar, где xxx - версия JasperReports. Это находится в каталоге C: \ tools \ jasperreports-xxx \ dist).
Все файлы JAR в подкаталоге lib (C: \ tools \ jasperreports-xxx \ lib).
На момент установки мы использовали JasperReport версии 5.0.1. Щелкните правой кнопкой мыши «Мой компьютер» и выберите «Свойства», затем нажмите кнопку «Переменные среды» на вкладке «Дополнительно». Теперь обновите переменную "Путь" этимC:\tools\jasperreports-5.0.1\dist\jasperreports-5.0.1.jar:C:\tools\jasperreports-5.0.1\lib. Теперь вы готовы создавать свои отчеты.
Во всех примерах этого руководства мы использовали задачи ANT для создания отчетов. Вbuildfile заботится об импорте всех необходимых JAR для создания отчетов. Следовательно, установка CLASSPATH, как упомянуто выше, поможет только тем, кто хочет создавать отчеты без использования ANT.
Настройка сборки
Все примеры в этом руководстве -
были написаны с использованием простого текстового редактора.
были сохранены в каталоге C: \ tools \ jasperreports-5.0.1 \ test \ src \ com \ tutorialspoint.
были скомпилированы и выполнены из командной строки с использованием Apache ANT. Мы будем использоватьbaseBuild.xml файл, который мы импортируем в ANT build.xmlфайл в последующих главах. Сохраните этот файл в C: \ tools \ jasperreports-5.0.1 \ test. Ниже приводится содержимое файла baseBuild.xml -
<?xml version = "1.0" encoding = "UTF-8"?>
<project name = "JasperReportExample" basedir = ".">
<description>Previews our JasperReport XML Design</description>
<property name = "file.name" value = "jasper_report_template" />
<!-- Directory where the JasperReports project file was extracted
needs to be changed to match the local environment -->
<property name = "jasper.dir" value = "../" />
<property name = "dist.dir" value = "${jasper.dir}/dist" />
<property name = "lib.dir" value = "${jasper.dir}/lib" />
<property name = "src.dir" value = "src" />
<property name = "classes.dir" value = "classes" />
<property name = "main-class" value = "com.tutorialspoint.HelpMe" />
<path id = "classpath">
<pathelement location = "./" />
<pathelement location = "${classes.dir}" />
<fileset dir = "${lib.dir}">
<include name = "**/*.jar" />
</fileset>
<fileset dir = "${dist.dir}">
<include name = "**/*.jar" />
</fileset>
</path>
<target name = "compile" depends = "clean-sample">
<mkdir dir = "${classes.dir}"/>
<javac srcdir = "${src.dir}" destdir = "${classes.dir}"
classpathref = "classpath" />
</target>
<target name = "run" depends = "compile">
<echo message = "Running class : ${main-class}"/>
<java fork = "true" classname = "${main-class}">
<classpath>
<path refid = "classpath" />
</classpath>
</java>
</target>
<target name = "clean-sample">
<delete dir = "${classes.dir}" />
<delete file = "./${file.name}.jasper" />
<delete file = "./${file.name}.jrprint" />
</target>
</project>
Этот файл имеет все необходимые цели, такие как очистка каталогов, компиляция файлов java и выполнение файлов классов.
Ниже приведены подробности, упомянутые в различных каталогах в baseBuild.xml. Предполагая, что текущий каталог - C: \ tools \ jasperreports-5.0.1 \ test) -
jasper.dir - это каталог C: \ tools \ jasperreports-5.0.1
lib.dir - это каталог C: \ tools \ jasperreports-5.0.1 \ lib
src.dir - это C: \ tools \ jasperreports-5.0.1 \ test \ src
classes.dir - это C: \ tools \ jasperreports-5.0.1 \ test \ classes
основной класс - com.tutorialspoint.HelpMe. Этот класс представляет собой простой класс, выполняемый, когда имя файла класса не передается из командной строки. Сохраните этот файл в C: \ tools \ jasperreports-5.0.1 \ test \ src \ com \ tutorialspoint.
package com.tutorialspoint;
public class HelpMe {
public static void main(String[] args) {
System.out.println("This is the default class executed."
+ "Please pass the fully qualified class" + " name to be executed as command line"
+ " parameter, for example," + " com.tutorialspoint.HelpMe ");
}
}
Классы менеджеров Джаспера
Существует ряд классов, которые будут использоваться для компиляции дизайна отчета JRXML, для заполнения отчета, для печати отчета, для экспорта в файлы PDF, HTML и XML, просмотра созданных отчетов и дизайна отчета.
Список этих классов -
net.sf.jasperreports.engine.JasperCompileManager - используется для компиляции шаблона отчета JRXML.
net.sf.jasperreports.engine.JasperFillManager - используется для заполнения отчета данными из источника данных.
net.sf.jasperreports.engine.JasperPrintManager - используется для печати документов, созданных библиотекой JasperReports.
net.sf.jasperreports.engine.JasperExportManager - используется для получения содержимого PDF, HTML или XML для документов, созданных в процессе заполнения отчета.
net.sf.jasperreports.view.JasperViewer - представляет собой простое приложение Java Swing, которое может загружать и отображать отчеты.
net.sf.jasperreports.view.JasperDesignViewer - используется во время разработки для предварительного просмотра шаблонов отчетов.
Настройка Apache ANT
Мы собираемся собрать все примеры, используя Apache ANT. Итак, пожалуйста, ознакомьтесь с главой ANT - Environment Setup, чтобы настроить Apache ANT в вашей системе.