JSON은 속성이 있는 데이터를 전송하기 위한 형식이 지정되고 읽을 수 있는 데이터 교환 형식입니다. 그러나 JSON 형식의 대용량 데이터는 표현하기 쉽고 이해하기 쉽지 않습니다. 우리는 대부분 큰 JSON 데이터를 표시 가능한 형식으로 변환해야 합니다. 이 문서에서는 간단한 템플릿을 사용하여 Java에서 JSON 데이터를 PDF 및 MS Word 보고서로 변환하는 방법을 안내합니다.
보고서 생성 Java API
GroupDocs.Assembly for Java API를 사용하여 DOCX 및 TXT 형식의 제공된 JSON 데이터 및 템플릿에서 보고서를 생성합니다. 또한 CSV, XML 데이터 소스에서 여러 형식의 자동 보고서 생성을 지원합니다.
다운로드 또는 구성
다운로드 섹션에서 JAR 파일을 다운로드하거나 maven 기반 Java 애플리케이션의 pom.xml에 대한 리포지토리 및 종속성 구성을 가져올 수 있습니다.
<repository>
<id>GroupDocsJavaAPI</id>
<name>GroupDocs Java API</name>
<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-assembly</artifactId>
<version>21.1</version>
</dependency>
Java의 JSON 데이터에서 PDF 보고서 생성
JSON 데이터를 형식이 지정된 PDF 보고서로 변환하는 단계로 빠르게 이동하겠습니다.
- JSON 데이터 소스 가져오기
- JSON 데이터에 따른 템플릿 정의
- 보고서 생성을 위해 JSON 데이터 소스와 템플릿을 간단한 자바 코드로 제공합니다.
JSON 데이터
PDF 보고서 생성을 위해 관리자와 해당 클라이언트 및 세부 정보의 다음 샘플 JSON 데이터를 사용합니다.
\[
{
"Name":"John Smith","Contract":\[
{"Client":{"Name":"A Company"},"Price":1200000},
{"Client":{"Name":"B Ltd."},"Price":750000},
{"Client":{"Name":"C & D"},"Price":350000}\]
},
{
"Name":"Tony Anderson","Contract":\[
{"Client":{"Name":"E Corp."},"Price":650000},
{"Client":{"Name":"F & Partners"},"Price":550000}\]
},
{
"Name":"July James","Contract":\[
{"Client":{"Name":"G & Co."},"Price":350000},
{"Client":{"Name":"H Group"},"Price":250000},
{"Client":{"Name":"I & Sons"},"Price":100000},
{"Client":{"Name":"J Ent."},"Price":100000}\]
}
\]
템플릿
TXT 또는 DOCX 형식으로 다음 템플릿을 정의합니다. 이를 통해 관리자와 해당 클라이언트 및 세부 정보를 반복할 수 있습니다. 그런 다음 보고서 생성을 위한 코드로 이동할 수 있습니다.
<<foreach [in managers]>>Manager: <<[Name]>>
Contracts:
<<foreach [in Contract]>>- <<[Client.Name]>> ($<<[Price]>>)
<</foreach>>
<</foreach>>
JSON에서 PDF 보고서를 생성하는 Java 단계
다음 단계와 Java 코드를 사용하면 정의된 템플릿에 따라 JSON 데이터를 PDF 보고서로 자동 변환할 수 있습니다.
- JSON 데이터 파일, .txt 템플릿 파일, PDF 출력 보고서 파일 경로를 정의합니다.
- JSON 데이터 파일로 JsonDataSoure를 인스턴스화합니다.
- 정의된 JsonDataSource로 DataSourceInfo를 생성합니다.
- DocumentAssembler 클래스의 _assembleDocument 메소드를 호출하여 제공된 JSON 데이터와 정의된 템플릿에서 PDF 보고서를 생성합니다.
// GroupDocs.Assembly API를 사용하여 Java에서 TXT 템플릿을 사용하여 JSON 데이터에서 PDF 보고서 생성
// 데이터 소스, 템플릿 및 출력 보고서 파일을 정의합니다.
String jsonFilePath = "dataPath/ManagerData.json";
String templateFilePath = "templatePath/template.txt";
String reportFilePath = "reportsPath/reportFromJSON.pdf";
// JSON 데이터 소스 인스턴스화
JsonDataSource datasource= new JsonDataSource(jsonFilePath);
DataSourceInfo dataSourceInfo = new DataSourceInfo(datasource,"managers");
// 보고서 생성
DocumentAssembler assembler = new DocumentAssembler();
assembler.assembleDocument(templateFilePath,reportFilePath,dataSourceInfo);
Java의 JSON 데이터에서 MS Word 보고서 생성
마찬가지로 위의 PDF 보고서 생성과 마찬가지로 다음을 통해 DOCX 보고서를 쉽게 만들 수 있습니다.
- DOCX 형식으로 동일한 템플릿을 정의합니다.
- 출력 보고서 문서 형식을 DOCX로 설정합니다.
- 나머지 코드는 JSON 데이터에서 MS Word DOCX 보고서를 생성하기 위해 동일하게 유지됩니다.
// GroupDocs.Assembly API를 사용하여 Java에서 DOCX 템플릿을 사용하여 JSON 데이터에서 Word 보고서 생성
// 데이터 소스, 템플릿 및 출력 보고서 파일을 정의합니다.
String jsonFilePath = "dataPath/ManagerData.json";
String templateFilePath = "templatePath/template.docx";
String reportFilePath = "reportsPath/reportFromJSON.docx";
// JSON 데이터 소스 인스턴스화
JsonDataSource datasource= new JsonDataSource(jsonFilePath);
DataSourceInfo dataSourceInfo = new DataSourceInfo(datasource,"managers");
// 보고서 생성
DocumentAssembler assembler = new DocumentAssembler();
assembler.assembleDocument(templateFilePath,reportFilePath,dataSourceInfo);
자세한 내용, 옵션 및 예제는 문서 및 GitHub 저장소를 참조하십시오. 추가 질문 및 모호한 사항이 있는 경우 포럼의 무료 지원에 문의하십시오.
결론
JSON 데이터를 PDF 형식으로 변환하여 보고서를 생성하는 자체 Java 기반 응용 프로그램을 편안하게 구축할 수 있기를 바랍니다. 마찬가지로 CSV 및 XML과 같은 다른 데이터 소스를 사용하여 DOCX와 같은 다른 형식으로 보고서를 생성할 수 있습니다.