XML은 eX텐시브 M마크업 L언어로 자체 설명적이며 W3C 권장 사항이며 데이터를 저장하고 전송하도록 설계되었습니다. XML 형식의 데이터를 받은 후 개발자는 PDF 또는 MS Word 문서와 같이 사람이 읽을 수 있는 다른 형식으로 변환할 수 있습니다. 이 기사에서는 간단한 템플릿을 사용하여 Java에서 XML 데이터를 PDF 및 MS Word 보고서로 변환하는 방법을 안내합니다.

다음 주제는 아래에서 논의됩니다.

보고서 생성 Java API - XML을 PDF 및 WORD로

GroupDocs.AssemblyDOCX 또는 TXT 템플릿을 사용하여 XML 데이터에서 보고서 생성을 자동화하는 Java API를 제공합니다. 또한 JSON, CSV 및 기타 데이터 소스를 지원하여 데이터를 다양한 파일 형식의 표시 가능한 보고서로 변환합니다.

다운로드 또는 구성

다운로드 섹션에서 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.4</version> 
</dependency>

Java의 XML 데이터에서 PDF 보고서 생성

XML 데이터를 형식이 지정된 PDF 보고서로 변환하는 단계로 빠르게 이동하겠습니다.

  • XML 데이터 소스 로드
  • XML 데이터에 따라 템플릿 정의
  • 보고서 생성을 위한 메소드에 XML 데이터 소스 및 템플릿을 제공합니다.
Java의 XML에서 PDF로 보고서

XML 데이터

PDF 보고서 생성을 위해 다음 XML 샘플 데이터가 사용됩니다. 여기에는 관리자와 해당 고객의 데이터가 포함되어 있습니다.

<Managers>
	<Manager>
		<Name>John Smith</Name>
		<Contract>
			<Client>
				<Name>A Company</Name>
			</Client>
			<Price>1200000</Price>
		</Contract>
		<Contract>
		...
		</Contract>
		...
	</Manager>
	<Manager>
		<Name>Tony Anderson</Name>
		...
	</Manager>
	...
</Managers>

템플릿

TXT 또는 DOCX 형식으로 다음 템플릿을 정의합니다. 이를 통해 관리자와 해당 클라이언트를 반복할 수 있습니다. 그 후 보고서 생성을 위해 아래 언급된 코드를 사용하십시오.

<<foreach \[in managers\]>>Manager: <<\[Name\]>>
Contracts:
<<foreach \[in Contract\]>>- <<\[Client.Name\]>> ($<<\[Price\]>>)
<</foreach>>
<</foreach>>

XML에서 PDF 보고서를 생성하는 Java 단계

다음 단계와 코드를 사용하면 정의된 템플릿에 따라 XML 데이터에서 PDF 보고서 생성을 자동화할 수 있습니다.

  • XML 데이터 파일, 텍스트 템플릿 파일 및 PDF 출력 보고서 파일을 정의합니다.
  • XMLDataSoure를 XML 데이터 파일로 인스턴스화합니다.
  • 정의된 XML 데이터 소스로 DataSourceInfo를 생성합니다.
  • assembleDocument 메서드를 호출하여 PDF 보고서를 생성합니다.

다음 코드는 위의 단계를 구현하고 Java의 XML 데이터 소스에서 PDF를 생성합니다.

// Java에서 TXT 템플릿을 사용하여 XML 데이터에서 PDF 보고서 생성
// 데이터 소스, 템플릿 및 출력 보고서 파일을 정의합니다.
String xmlDataSource = "dataPath/Managers.xml";
String templateFilePath = "templatePath/template.txt";
String reportFilePath = "reportsPath/PDFreportFromXML.pdf";

// XML 데이터 소스 로드
XmlDataSource datasource = new XmlDataSource(xmlDataSource);
DataSourceInfo dataSourceInfo = new DataSourceInfo(datasource,"managers");

// 문서를 조합하여 PDF 생성
DocumentAssembler assembler = new DocumentAssembler();
assembler.assembleDocument(templateFilePath, reportFilePath,dataSourceInfo);

Java의 XML 데이터에서 MS Word 보고서 생성

마찬가지로 Java의 동일한 XML 데이터에서 MS Word DOC/DOCX 보고서를 작성할 수 있습니다. 출력 파일 이름을 변경하는 것 외에는 차이가 없습니다.

  • XML 데이터 파일을 로드합니다.
  • TXT 또는 DOCX 형식의 템플릿 정의.
  • 출력 보고서 문서 형식을 DOCX로 설정합니다.
  • XML 데이터 파일, 템플릿 및 출력 파일 경로를 DocumentAssembler에 제공하여 XML을 DOCX로 변환합니다.

다음 코드는 XML을 변환하고 Java에 정의된 템플릿을 사용하여 DOCX 파일을 생성합니다.

// Java의 텍스트 템플릿을 사용하여 XML 데이터에서 MS Word 보고서 생성
// 데이터 소스, 템플릿 및 출력 보고서 파일을 정의합니다.
String xmlDataSource = "dataPath/Managers.xml";
String templateFilePath = "templatePath/template.docx";
String reportFilePath = "reportsPath/WordReportFromXML.docx";

//XML 데이터 소스 인스턴스화
XmlDataSource datasource = new XmlDataSource(xmlDataSource);
DataSourceInfo dataSourceInfo = new DataSourceInfo(datasource,"managers");

//문서를 조립 
DocumentAssembler assembler = new DocumentAssembler();
assembler.assembleDocument(templateFilePath, reportFilePath,dataSourceInfo);

무료 API 라이선스 받기

평가 제한 없이 API를 사용하기 위해 임시 무료 라이선스 받기를 할 수 있습니다.

결론

결론적으로 XML 데이터를 Java 보고서로 PDF 형식으로 변환하는 방법을 배웠습니다. 또한 템플릿을 사용하여 동일한 XML에서 DOC/DOCX 형식의 보고서 생성을 보았습니다. JSON, CSV, XML에서 PDF 및 MS Word 보고서 생성 시리즈를 읽은 후 자신의 보고서 작성기를 구축하는 데 익숙해질 것입니다. 자바 애플리케이션.

마찬가지로 다른 많은 데이터 소스를 보고서로 변환할 수 있습니다. 자세한 내용, 옵션 및 예는 문서 및 GitHub 리포지토리를 참조하십시오. 추가 문의 사항이 있는 경우 포럼을 통해 문의하십시오.

또한보십시오