Учебное пособие по JasperReports:что такое отчет Jasper для Java? Пример
Что такое JasperReports для Java?
Отчеты JasperReports — это инструмент отчетности с открытым исходным кодом для Java, который используется для создания отчетов о приложениях. Этот инструмент отчетности помогает выводить расширенный контент на экран, на принтер или в различные файлы, такие как HTML, PDF, XLS, RTF, CSV, XML, ODT и TXT. JasperReports также можно использовать для приложений с поддержкой Java, таких как Java EE, или веб-приложений для создания динамического содержимого.
Из этого пошагового руководства по JasperReports вы узнаете:
- Что такое Jasper Reports?
- Как установить Jasper Reports?
- Зачем использовать Jasper Reports?
- Жизненный цикл JasperReports
- Возможности Jasper Reports
- Джаспер против Пентахо
- Создание примера шаблона отчета
- Проблемы, возникающие при создании JasperReports
- Недостатки использования отчетов Jasper
Как установить Jasper Reports — Настройка среды
Теперь в этом руководстве по Jaspersoft Studio давайте изучим пошаговый процесс настройки среды JasperReports:
Шаг 1) Загрузите выпуск сообщества jasper reports
Перейдите по этой ссылке и нажмите «Загрузить сейчас», чтобы установить выпуск сообщества Jasper Reports.
Шаг 2) Выберите Jaspersoft Studio CE
В выпусках сообщества выберите Jaspersoft Studio CE
Шаг 3) Загрузите Jaspersoft Studio
Перейдите по этой ссылке и нажмите кнопку «Загрузить». откройте загруженный файл TIB_js-studiocomm_6.9.0_windows_x86_64.exe.TIB_js-studiocomm_6.9.0_windows_x86_64.exe.
Шаг 4) Нажмите кнопку «Согласен».
Появится следующий экран, нажмите кнопку «Согласен».
Шаг 5) Выберите местоположение
Выберите место установки и нажмите кнопку "Далее".
Шаг 6) Прогресс запущен
Вы увидите ход выполнения на следующем экране.
Шаг 7) Нажмите кнопку "Готово"
На следующем экране нажмите кнопку "Готово".
Шаг 8) Процесс завершен
В вашем окне появится следующий экран.
Шаг 9) Начать
Далее нажмите «Начать».
Шаг 10) Начните работать со студией Jasper Reports
Появится следующий экран, на котором вы можете начать работу со студией Jasper Reports.
Зачем использовать Jasper Reports?
Вот много причин для использования инструмента отчетов Jasper:
- Он обеспечивает высокую производительность при создании отчетов и доставке их пользователям.
- Это поможет вам представить ваши данные в текстовом или графическом формате.
- Это автономный встроенный сервер отчетов для составления и выполнения отчетов.
- Он позволяет управлять доступом ко всем отчетам в репозитории на основе ролей.
- Структура безопасности spring для интеграции с внутренними системами аутентификации
- Он предлагает безопасную, запланированную и автоматическую интерактивную систему создания отчетов.
- Вы можете встраивать отчеты в приложение Java или другое приложение.
- Можно экспортировать отчеты в различных форматах.
- Разработчики могут предоставлять данные несколькими способами.
- Он может создавать водяные знаки, которые накладываются на основное изображение.
- Он предлагает полный набор SOAP, REST и веб-служб.
- Это позволяет использовать данные одного отчета из нескольких источников данных.
Жизненный цикл JasperReports
Теперь в этом руководстве по JasperReports мы узнаем о жизненном цикле JasperReports.
Ниже приведен общий поток жизненного цикла отчетов Jasper:
<центр>
<рисунок> рисунок>центр>
Разработка отчета:
Это будет первый шаг, на котором мы создадим файл JRXML. Это файл представляет собой простой XML-документ, который определяет макет отчета. Вы можете разработать этот файл с помощью любого текстового редактора или дизайнера отчетов.
Однако, если вы используете дизайнер отчетов, мы можем визуализировать макет отчета, а реальную структуру JRXML следует игнорировать.
Составление отчета:
На этом этапе жизненного цикла компилируется JRXML, созданный на первом этапе, и создается двоичный объект, называемый файлом Jasper (файл с jasper xtn).
Эта компиляция делается для повышения производительности во время выполнения. Эти сгенерированные файлы Jasper должны поставляться вместе с вашим приложением для запуска отчетов.
Выполнение отчета:
На этом этапе данные из приложения собираются и заполняются в формате скомпилированного отчета. Существует класс net.sf.jasperreports.engine.JasperFillManager, который предлагает функции для заполнения данных в отчетах.
Вывод будет сохранен в файле печати Jasper (файл с jprint xtn), который можно использовать для печати или экспорта отчета.
Экспорт отчета в нужный формат:
На этом последнем этапе вам необходимо экспортировать созданный ранее файл печати Jasper в любой формат с помощью класса JasperExportManager. Поскольку Jasper предлагает несколько форматов экспорта, мы можем использовать одни и те же входные данные для создания различных представлений данных.
Возможности Jasper Reports
Теперь мы рассмотрим функции JasperReports в этом пошаговом руководстве по JasperReports.
Вот важные особенности инструмента Jasper Reports:
- Предлагает гибкий макет отчета.
- Разработчики могут предоставлять данные несколькими способами.
- Это позволяет принимать данные из нескольких источников данных.
- Также можно применять водяные знаки.
- Для передачи данных можно использовать несколько источников данных.
- Вы можете создавать вложенные отчеты
- Он может создавать вложенные отчеты.
- Помогает экспортировать отчеты в различных форматах, таких как файлы PDF, HTML, RTF, Microsoft Excel.
- Подсистема позволяет включать в определения отчетов диаграммы.
Джаспер против Пентахо
Теперь мы узнаем о разнице между Jasper и Pentaho в этом руководстве по Jasper Reporting.
Вот основные различия между Джаспером и Пентахо:
Параметры | Джаспер | Пентахо |
---|---|---|
Отчеты | Jasper использует отчет для разработки отчетов. | Он использовал конструктор отчетов Pentaho. |
Поддержка ETL | Jaspersoft использует версию Talend Open Studio для целей ETL. | Он использует Pentaho Data Integrator в качестве инструмента ETL по умолчанию. |
Панель управления | Функциональность панели инструментов присутствует только в редакторе Enterprise Jaspersoft. | Pentaho предлагает широкий спектр функций на своих информационных панелях. |
Мобильная бизнес-аналитика | У Jaspersoft также лучше мобильная BI. | Pentaho использовала сторонний инструмент для расширения возможностей мобильной бизнес-аналитики. |
Документация | Улучшенный маркетинг, сайты и документация. | Плохая поддержка документации. |
Лучшая функция | Легче искать и находить то, что вам нужно. | Предлагает интеллектуальный анализ данных и интеграцию с iPhone |
Платная версия | Платная версия предлагает такие функции, как веб-адрес для специальных запросов, веб-адрес для создания панели инструментов. | Предлагает такие функции, как интеграция с LDAP, SSO, аудит и т. д. |
Создание примера шаблона отчета
Теперь в этом руководстве по JasperReports давайте узнаем, как создать шаблон отчета в JasperReports.
Файл шаблона отчета, используемый в JasperReports, представляет собой простой файл XML с расширением jrxml. Этот файл содержит тег в качестве корневого элемента. Фреймворк JasperReports может обрабатывать различные типы источников данных.
Шаблон отчета разработан и создан с использованием следующих двух шагов –
Шаг 1) Создание файла JRXML в Jaspersoft Studio.
- Перейти к файлу.
- Выберите новое подменю.
- Нажмите на опцию Jasper Report.
Шаг 2) Выбор нужного шаблона.
- Выберите свой шаблон, например, вишня.
- Нажмите кнопку "Далее".
Шаг 3) Выбор родительской папки.
- Выберите папку MyReports.
- Введите имя файла, например, "Вишневый отчет".
- Нажмите кнопку "Далее".
Шаг 4) В окне источника данных, нажмите кнопку «Создать», чтобы создать новый адаптер данных.
Шаг 5) Выбор адаптера данных.
- Выберите адаптер данных из списка. Например, «Коллекция компонентов JavaBeans».
- Нажмите кнопку "Далее".
Шаг 6) Ввод сведений об адаптере данных и выбор заводского класса.
- Введите имя адаптера.
- Выберите заводской класс, нажав кнопку «…».
Шаг 7) Ввод префикса или шаблона.
- Введите префикс имени или шаблон.
- Нажмите на соответствующие элементы.
- Нажмите кнопку "ОК".
Шаг 8) Определение фабричного класса и добавление пути к файлам jar.
- Введите имя статического метода в классе фабрики. В этом примере отчетов Jasper это createBeanCollection.
- Если в вашем определении JavaBeans есть описания полей, и вы хотите использовать их в качестве имен в Jaspersoft Studio, установите флажок «Использовать описание поля».
- Добавьте путь к файлам jar.
- Нажмите кнопку "Готово".
Шаг 9) Нажмите кнопку «Далее».
Шаг 10) Поздравляем! Вы успешно добавили всю необходимую информацию для создания отчета. Нажмите кнопку «Готово».
Отчет будет создан, как показано на экране ниже.
Приведенный выше файл требует компиляции в двоичный формат JasperReport, который называется файлом jasper.
Интерфейс net.sf.jasperreports.engine.design.JRCompiler, являющийся частью библиотеки JasperReports, играет важную роль в компиляции этого файла шаблона отчета.
Реализация этого интерфейса может быть написана на Java, JavaScript, Groovy или любом другом языке сценариев.
Вы можете скомпилировать файл JRXML следующими двумя способами:
- Программная компиляция.
- Компиляция с использованием задачи Apache ANT.
Понимание различных диапазонов отчетов
Ниже приведен стандартный формат отчета, используемый большинством коммерческих инструментов для создания отчетов.
- Название
- Заголовок страницы
- Заголовок столбца
- Подробнее
- Нижний колонтитул
- Нижний колонтитул страницы
- Сводка
Давайте подробно изучим каждую отчетную группу:
Заголовок:
Эта полоса показана в начале отчета. Его можно использовать как первую страницу, установив атрибут isTitleNewPage="true."
Заголовок страницы:
Полоса отчета заголовка страницы отображается в начале каждой страницы. Он исключает первую страницу, если используется полоса заголовка, и последнюю страницу, если эта полоса сводки используется с настройкой isSummaryWithPageHeaderAndFooter="false.".
.
Заголовок столбца:
Заголовки столбцов появляются перед полосой сведений на каждой странице.
Подробности:
Раздел сведений повторяется для каждой записи в предоставленном источнике данных. Также разрешено иметь несколько полос детализации (1, 2 и т.д.)
Нижний колонтитул:
Этот раздел отображается под полосой сведений на каждой странице, где присутствует полоса сведений. Настройкой по умолчанию является конец страницы, но его можно переключить на последнюю полосу сведений, установив атрибут isFloatColumnFooter=" true."
.
Нижний колонтитул страницы:
Этот раздел будет отображаться в конце каждой страницы, исключая сводную полосу, полосу заголовка, полосу и последнюю полосу без сводки.
Нижний колонтитул последней страницы:
Этот раздел отображается на предыдущей странице (если не указана сводная полоса) вместо обычного нижнего колонтитула страницы.
Обзор:
Сводный раздел появляется только в конце отчета на новой странице. когда isSummaryNewPage="true"
установлен и с верхним и нижним колонтитулом страницы установлен isSummaryWithPageHeaderAndFooter="true".
Заголовок группы:
Этот раздел появляется только в том случае, если он определяется каждый раз, когда выражение группы изменяется перед полосой сведений.
Нижний колонтитул группы:
Этот раздел отображается только в том случае, если группа определяется каждый раз перед изменением выражения группы после полосы сведений.
Фон:
Он отображается на всех страницах в качестве фона для всех остальных полос отчетности.
Нет данных:
Этот бэнд появится, если источник данных не был передан или источник данных пуст, и если установлено значение NoDataType="NoDataSection".
Проблемы, возникающие при создании JasperReports
Вот несколько проблем, с которыми вы столкнетесь при создании отчетов Jasper:
- Основные изменения – бизнес-изменения или усовершенствования. Необходимо изменить основную логику отчета.
- Сложные отчеты – хорошим примером являются вложенные отчеты и отчеты с перекрестными таблицами.
- Графические отчеты или наглядные диаграммы, например, графики, линии XY, круговые диаграммы, гистограммы, временные ряды и измерительные диаграммы.
Недостатки использования Jasper Reports
Вот недостатки/минусы использования Jasper Reports.
- Как только вы начнете вносить какие-либо изменения в части пакета и удалять функции, очень сложно вернуться к настройкам пакета по умолчанию.
- Это слишком жестко, редактирование строк и создание кросс-таблиц — сложная задача.
- Некоторые общие задачи, такие как указание промежуточных итогов для сгруппированного отчета, проще в двух других дизайнерах отчетов.
- Jasper требует, чтобы вы составляли отчеты перед их запуском. Это означает, что у разработчиков отчетов должен быть установлен весь Java SDK.
- Иногда при редактировании отчета предварительный просмотр отличается от того, который отображается в Интернете.
Обзор:
- JasperReports – это система отчетов Java с открытым исходным кодом. Эта библиотека классов Java предлагает возможности создания отчетов для вашего приложения.
- Jasper Reports обеспечивает высокую производительность при создании отчетов и доставке их пользователям.
- Жизненный цикл Jasper Reports включает 1) разработку отчетов, 2) компиляцию отчетов, 3) выполнение отчета и 4) экспорт отчета в нужный формат.
- В Jasper Reports вы можете создать несколько источников данных для передачи данных.
- Основное различие между Jasper и Pentaho заключается в том, что отчеты Jasper используют отчет для разработки отчетов, а Pentaho использует дизайнер отчетов Pentaho.
- Файл шаблона отчета, используемый в JasperReports, представляет собой простой файл XML с расширением jrxml.
- Важные полосы отчетов:1) Заголовок 2) Верхний колонтитул страницы 3) Заголовок столбца 4) Сведения 5) Нижний колонтитул столбца 6) Нижний колонтитул страницы и 7) Резюме.
- Самая большая проблема использования Jasper Reports заключается в том, что вам необходимо изменить основную логику отчета, если изменится бизнес-логика.
- Самый большой недостаток Jasper Reports заключается в том, что при внесении каких-либо изменений в части пакета сложно вернуться к настройкам пакета по умолчанию.
java
- Для чего используется гафний?
- Java для цикла
- Учебное пособие по абстрактному классу C # с примером:что такое абстракция?
- Что такое Ява? Определение, значение и особенности платформ Java
- JVM | Что такое виртуальная машина Java и ее архитектура
- Что такое абстракция в ООП? Абстрактный класс и метод Java
- Инкапсуляция в ООП Java с примером
- Что такое класс и объект в Java OOPS? Учитесь на примере
- Метод Java String charAt() с примером
- Метод Java String endWith() с примером