JasperReports 튜토리얼: Java용 Jasper 보고서란 무엇입니까? 예

Java용 JasperReports란 무엇입니까?

재스퍼 리포트 애플리케이션 보고에 사용되는 Java용 오픈 소스 보고 도구입니다. 이 보고 도구는 화면, 프린터 또는 HTML, PDF, XLS, RTF, CSV, XML, ODT 및 TXT와 같은 다양한 파일에 풍부한 콘텐츠를 작성하는 데 도움이 됩니다. JasperReports는 Java EE 또는 웹 애플리케이션과 같은 Java 지원 애플리케이션에 사용되어 동적 콘텐츠를 생성할 수도 있습니다.

Jasper Reports 설치 방법 - 환경 설정

이제 이 Jaspersoft Studio 튜토리얼에서는 JasperReports 환경 설정을 위한 단계별 프로세스를 살펴보겠습니다.

단계 1) Jasper Report 커뮤니티 에디션 다운로드
이것으로 가라. (링크) Jasper Reports Community 에디션을 설치하려면 지금 다운로드 옵션을 클릭하세요.

Jasper Reports 설치 - 환경 설정

단계 2) Jaspersoft Studio CE를 선택하세요.
커뮤니티 에디션에서 Jaspersoft Studio CE를 선택하세요.

Jasper Reports 설치 - 환경 설정

단계 3) Jaspersoft Studio 다운로드
이것으로 가라. 링크 다운로드 버튼을 클릭하세요. TIB_js-studiocomm_6.9.0_ 다운로드를 엽니다.windows_x86_64.exe 파일.TIB_js-studiocomm_6.9.0_windows_x86_64.exe.

Jasper Reports 설치 - 환경 설정

단계 4) 동의 버튼을 클릭하세요
FOLLOwing 화면이 나타나면 동의 버튼을 선택하세요.

Jasper Reports 설치 - 환경 설정

단계 5) 위치 선택
설치 위치를 선택하고 다음 버튼을 클릭합니다.

Jasper Reports 설치 - 환경 설정

단계 6) 현재 진행 중입니다.
다음 화면에서 진행 상황을 볼 수 있습니다.

Jasper Reports 설치 - 환경 설정

단계 7) 완료 버튼을 클릭하세요
다음 화면에서는 완료 버튼을 클릭하세요.

Jasper Reports 설치 - 환경 설정

단계 8) 진행이 완료되었습니다
FOLLOwing 화면이 창에 나타납니다.

Jasper Reports 설치 - 환경 설정

단계 9) 시작하기
다음으로 시작하기 옵션을 클릭하세요.

Jasper Reports 설치 - 환경 설정

단계 10) Jasper Reports 스튜디오와 작업 시작
FOLLOwing 화면이 나타나면 Jasper Reports 스튜디오 작업을 시작할 수 있습니다.

Jasper Reports 설치 - 환경 설정

Jasper Report를 사용하는 이유는 무엇입니까?

Jasper 보고서 도구를 사용하는 여러 가지 이유는 다음과 같습니다.

  • 보고서 생성 성능과 사용자에게 전달 기능을 제공합니다.
  • 데이터를 텍스트 또는 그래픽 형식으로 표현하는 데 도움이 됩니다.
  • 보고 편집 및 실행을 위한 독립형 및 내장형 보고 서버입니다.
  • 이는 저장소의 모든 보고서에 대한 역할 기반 액세스 제어를 허용합니다.
  • 사내 인증 시스템과의 통합을 위한 스프링 보안 프레임워크
  • 안전하고 일정하며 자동 전달되는 대화형 보고 엔진을 제공합니다.
  • Java 또는 비Java 애플리케이션에 보고서를 포함할 수 있습니다.
  • 다양한 형식의 보고서를 내보낼 수 있습니다.
  • 개발자는 다양한 방법으로 데이터를 제공할 수 있습니다.
  • 기본 이미지 위에 놓이는 워터마크를 생성할 수 있습니다.
  • 그것은 완전한 세트를 제공합니다 SOAP, REST 및 웹 서비스.
  • 이를 통해 여러 데이터 소스의 단일 보고서 데이터를 사용할 수 있습니다.

JasperReports의 수명주기

이제 이 JasperReports 튜토리얼에서는 JasperReports의 수명주기에 대해 알아 보겠습니다.

FOLLOwing Jasper Reports의 라이프사이클의 일반적인 흐름은 다음과 같습니다.

JasperReports의 수명주기
JasperReports의 수명주기

보고서 디자인:

이것이 JRXML 파일을 생성하는 첫 번째 단계입니다. 보고서 레이아웃을 정의하는 간단한 XML 문서인 파일입니다. 텍스트 편집기나 보고서 디자이너를 사용하여 이 파일을 개발할 수 있습니다.

그러나 보고서 디자이너를 사용하는 경우 보고서의 레이아웃을 시각화할 수 있으며 JRXML의 실제 구조는 무시되어야 합니다.

보고서 편집:

이 라이프사이클 단계에서는 첫 번째 단계에서 구축된 JRXML이 컴파일되고 Jasper 파일(jasper xtn이 포함된 파일)이라는 바이너리 객체가 생성됩니다.

이 컴파일은 실행 중에 더 나은 성능을 얻기 위해 수행됩니다. 보고서를 실행하려면 이렇게 생성된 Jasper 파일을 애플리케이션과 함께 제공해야 합니다.

보고서 실행:

이 단계에서는 애플리케이션의 데이터가 수집되어 컴파일된 보고서 형식으로 채워집니다. 보고서의 데이터를 채우는 기능을 제공하는 net.sf.jasperreports.engine.JasperFillManager라는 클래스가 있습니다.

출력은 보고서를 인쇄하거나 내보내는 데 사용할 수 있는 Jasper 인쇄 파일(jprint xtn이 포함된 파일)에 저장됩니다.

보고서를 원하는 형식으로 내보내기:

이 마지막 단계에서는 JasperExportManager 클래스를 사용하여 이전에 생성된 Jasper 인쇄 파일을 어떤 형식으로든 내보내야 합니다. Jasper는 다양한 형식의 내보내기를 제공하므로 동일한 입력을 사용하여 데이터의 다양한 표현을 생성할 수 있습니다.

재스퍼 리포트의 특징

이제 JasperReports 단계별 튜토리얼에서 JasperReports의 기능을 다루겠습니다.

Jasper Reports 도구의 중요한 기능은 다음과 같습니다.

  • 유연한 보고서 레이아웃을 제공합니다.
  • 개발자는 다양한 방법으로 데이터를 제공할 수 있습니다.
  • 이를 통해 여러 데이터 소스의 데이터를 수락할 수 있습니다.
  • 워터마크도 적용할 수 있습니다.
  • 여러 데이터 소스를 사용하여 데이터를 전송할 수 있습니다.
  • 하위 보고서를 생성할 수 있습니다.
  • 하위 보고서를 생성할 수 있습니다.
  • 다음과 같은 다양한 형식으로 보고서를 내보내는 데 도움이 됩니다. PDF, HTML, RTF, Microsoft Excel 파일.
  • 엔진을 사용하면 보고서 정의에 차트를 포함할 수 있습니다.

재스퍼 vs. 펜타호

이제 Jasper Reporting 튜토리얼에서 Jasper와 Pentaho의 차이점에 대해 알아 보겠습니다.

Jasper와 Pentaho의 주요 차이점은 다음과 같습니다.

파라미터 벽옥 펜타 호
보고서 Jasper는 보고서를 디자인하기 위해 보고서를 사용합니다. Pentaho Report Designer를 사용했습니다.
ETL 지원 Jaspersoft는 ETL 목적으로 Talend Open Studio 버전을 사용합니다. Pentaho Data Integrator를 기본으로 사용합니다. ETL 도구.
대시보드 대시보드 기능은 Jaspersoft의 Enterprise 편집기에만 있습니다. Pentaho는 대시보드에서 다양한 기능을 제공합니다.
모바일 비즈니스 인텔리전스 Jaspersoft에는 더 나은 모바일 BI도 있습니다. Pentaho는 모바일 BI 경험을 향상시키기 위해 타사 도구에 의존해야 했습니다.
문서 더 나은 마케팅, 사이트 및 문서화. 문서 지원이 좋지 않습니다.
최고의 기능 필요한 것을 더 쉽게 조사하고 찾을 수 있습니다. 데이터 마이닝 및 iPhone 통합 제공
유료 버전 유료 버전은 다음과 같은 기능을 제공합니다. 임시 쿼리 web Ul, 대시보드 생성 web Ul. LDAP 통합, SSO, 감사 등과 같은 기능을 제공합니다.

보고서 템플릿 예 만들기

이제 이 JasperReports 튜토리얼에서는 JasperReports에서 보고서 템플릿을 생성하는 방법을 알아 보겠습니다.

JasperReports에서 사용되는 보고서 템플릿 파일은 jrxml 확장자를 갖는 간단한 XML 파일입니다. 이 파일에는 루트 요소로 태그가 포함되어 있습니다. JasperReports 프레임워크는 다양한 유형의 데이터 소스를 처리할 수 있습니다.

보고서 템플릿은 다음을 사용하여 디자인되고 생성됩니다.wing 두 단계 –

단계 1) Jaspersoft Studio에서 JRXML 파일을 생성합니다.

  1. 파일 옵션으로 이동합니다.
  2. 새로 만들기 하위 메뉴를 선택하세요.
  3. Jasper Report 옵션을 클릭하세요.

보고서 템플릿 예 만들기

단계 2) 원하는 템플릿을 선택합니다.

  1. 예를 들어 체리와 같은 템플릿을 선택합니다.
  2. "다음" 버튼을 클릭하십시오.

보고서 템플릿 예 만들기

단계 3) 상위 폴더 선택.

  1. MyReports 폴더를 선택합니다.
  2. 예를 들어 "Cherry Report"와 같이 파일 이름을 입력합니다.
  3. "다음" 버튼을 클릭하십시오.

보고서 템플릿 예 만들기

단계 4) 데이터 소스 창에서, 새로운 데이터 어댑터를 생성하려면 "새로 만들기" 버튼을 클릭하세요.

보고서 템플릿 예 만들기

단계 5) 데이터 어댑터 선택.

  1. 목록에서 데이터 어댑터를 선택하세요. box. 예를 들어 "JavaBeans 컬렉션"입니다.
  2. "다음" 버튼을 클릭하십시오.

보고서 템플릿 예 만들기

단계 6) 데이터 어댑터 입력 중tails 그리고 팩토리 클래스를 선택합니다.

  1. 어댑터 이름을 입력합니다.
  2. "..." 버튼을 클릭하여 팩토리 클래스를 선택합니다.

보고서 템플릿 예 만들기

단계 7) 접두사 또는 패턴을 입력합니다.

  1. 이름 접두사 또는 패턴을 입력합니다.
  2. 일치하는 항목을 클릭하세요.
  3. "확인"버튼을 클릭합니다.

보고서 템플릿 예 만들기

단계 8) 팩토리 클래스를 정의하고 jar 파일에 경로를 추가합니다.

  1. 팩토리 클래스의 정적 메서드 이름을 입력합니다. 이 Jasper 보고서 예제에서는 createBeanCollection입니다.
  2. JavaBeans 정의에 필드 설명이 있고 이를 Jaspersoft Studio에서 이름으로 사용하려면 필드 설명 사용 확인을 선택하세요.box.
  3. jar 파일에 경로를 추가합니다.
  4. “마침” 버튼을 클릭하세요.

보고서 템플릿 예 만들기

단계 9) "다음" 버튼을 클릭하십시오.

보고서 템플릿 예 만들기

단계 10) 축하해요! 필요한 모든 보고서 생성 정보를 성공적으로 추가했습니다. “마침” 버튼을 클릭하세요.

보고서 템플릿 예 만들기

아래 화면과 같이 보고서가 생성됩니다.

보고서 템플릿 예 만들기

위의 파일은 Jasper 파일이라고 불리는 JasperReport Binary 형식으로 컴파일되어야 합니다.

JasperReports 라이브러리의 일부인 net.sf.jasperreports.engine.design.JRCompiler 인터페이스는 이 보고서 템플릿 파일을 컴파일하는 데 중요한 역할을 합니다.

이 인터페이스의 구현은 다음과 같이 작성할 수 있습니다. 자바, 자바 스크립트, 그루비, 또는 기타 스크립팅 언어.

다음에서 JRXML 파일을 컴파일할 수 있습니다.wing 두 가지 방법:

  • 프로그래밍 방식의 컴파일.
  • Apache ANT 작업을 사용하여 컴파일합니다.

다양한 보고서 밴드 이해

FOLLOwing 대부분의 상업 보고서 생성 도구에서 채택한 표준 보고서 형식입니다.

  • Title
  • 페이지 헤더
  • 열 머리글
  • 세부
  • 열 바닥글
  • 페이지 바닥글
  • 요약

각 보고 밴드에 대해 자세히 알아보겠습니다.

표제:

이 밴드는 보고서 시작 부분에 표시됩니다. 속성을 설정하여 첫 페이지로 사용할 수 있습니다. isTitleNewPage="true."

페이지 헤더:

각 페이지 시작 부분에 표시되는 페이지 헤더 보고 밴드입니다. 타이틀 밴드를 사용하는 경우 첫 번째 페이지를 제외하고 설정과 함께 이 요약 밴드를 사용하는 경우 마지막 페이지를 제외합니다. isSummaryWithPageHeaderAndFooter="false.".

열 헤더:

열 머리글은 각 페이지의 세부 밴드 앞에 나타납니다.

세부 정보 :

제공된 데이터 소스의 각 레코드에 대해 반복되는 세부 섹션입니다. 또한 여러 세부 밴드(1, 2 등)를 가질 수도 있습니다.

열 바닥글:

이 섹션은 세부 밴드가 있는 각 페이지의 세부 밴드 아래에 나타납니다. 기본 설정은 페이지 끝이지만 속성을 설정하여 마지막 세부 밴드 아래로 전환할 수 있습니다. isFloatColumnFooter=" true."

페이지 바닥글:

이 섹션은 요약 밴드, 제목 밴드, 마지막 비요약 밴드를 제외한 각 페이지의 끝에 표시됩니다.

마지막 페이지 바닥글:

이 섹션은 일반 페이지 바닥글 대신 이전 페이지(요약 밴드가 제공되지 않은 경우)에 나타납니다.

슬립폼 공법 선택시 고려사항

요약 섹션은 새 페이지의 보고서 끝 부분에만 나타납니다. 언제 isSummaryNewPage="true" 설정되어 있고 페이지 머리글과 바닥글이 설정되어 있습니다. isSummaryWithPageHeaderAndFooter="true".

그룹 헤더:

이 섹션은 디테일 밴드 이전에 그룹 표현이 바뀔 때마다 정의한 경우에만 나타납니다.

그룹 바닥글:

이 섹션은 세부 밴드 이후 그룹 표현이 변경되기 전에 매번 그룹이 정의된 경우에만 표시됩니다.

배경:

이는 다른 모든 보고 밴드의 배경으로 모든 페이지에 표시됩니다.

데이터 없음:

이 밴드는 데이터 소스가 전달되지 않았거나 데이터 소스가 비어 있고NoDataType=”NoDataSection”이 설정된 경우에 나타납니다.

JasperReports를 생성하는 동안 직면한 문제

Jasper Report를 생성하는 동안 직면하게 될 몇 가지 과제는 다음과 같습니다.

  • 핵심 변경 – 비즈니스 변경 또는 개선 사항입니다. 보고서의 핵심 로직을 변경해야 합니다.
  • 복잡한 보고서 – 하위 보고서와 교차 분석 보고서가 좋은 예입니다.
  • 차트 보고서 또는 시각적 차트(예: 그래프, XY 선, 원형, 막대, 시계열 및 미터 차트)

Jasper Report 사용의 단점

Jasper Reports 사용의 단점/단점은 다음과 같습니다.

  • 패키지의 일부를 변경하고 기능을 제거하기 시작하면 기본 패키지 설정으로 돌아가는 것이 매우 어렵습니다.
  • 너무 엄격해서 라인 편집과 크로스탭 생성이 어려운 작업입니다.
  • 그룹화된 보고서에 대한 소계 지정과 같은 일부 일반적인 작업은 다른 두 보고서 디자이너에서 더 쉽습니다.
  • Jasper에서는 보고서를 실행하기 전에 보고서를 컴파일해야 합니다. 이는 보고서 개발자가 전체 Java SDK를 설치해야 함을 의미합니다.
  • 보고서를 편집할 때 웹에 표시되는 것과 동일한 미리보기가 표시되지 않는 경우가 있습니다.

요약

  • JasperReports는 오픈 소스 Java 보고 엔진입니다. 이 Java 클래스 라이브러리는 애플리케이션에 대한 보고 기능을 제공합니다.
  • Jasper Reports는 보고서 생성 성능과 사용자에게 전달 기능을 제공합니다.
  • Jasper Reports 라이프사이클에는 1) 보고서 디자인, 2) 보고서 컴파일, 3) 보고서 실행, 4) 보고서를 원하는 형식으로 내보내기가 포함됩니다.
  • Jasper Reports에서는 여러 데이터 소스를 생성하여 데이터를 전송할 수 있습니다.
  • Jasper와 Pentaho의 주요 차이점은 Jasper 보고서는 보고서를 디자인하는 데 보고서를 사용하는 반면 펜타 호 Pentaho 보고서 디자이너를 사용합니다.
  • JasperReports에서 사용되는 보고서 템플릿 파일은 jrxml 확장자를 갖는 간단한 XML 파일입니다.
  • 중요 보고서 밴드는 1) 제목 2) 페이지 머리글 3) 열 머리글 4) 세부 정보 5) 열 바닥글 6) 페이지 바닥글 및 7) 요약입니다.
  • Jasper Reports를 사용할 때 가장 큰 과제는 비즈니스 로직이 변경되면 보고서의 핵심 로직도 변경해야 한다는 것입니다.
  • Jasper Reports의 가장 큰 단점은 패키지의 일부를 변경할 때 기본 패키지 설정으로 돌아가기가 어렵다는 것입니다.