XML — це розширена мова розмітки, яка описує себе, рекомендує W3C і призначена для зберігання та транспортування даних. Отримавши дані у форматі XML, ви, як розробник, можете конвертувати їх у будь-який інший, зручніший для читання, формат, наприклад PDF або документ MS Word. Ця стаття допоможе вам перетворити дані XML у звіти PDF і MS Word на Java за допомогою простих шаблонів.

Нижче обговорюються такі теми:

Java API для створення звітів - XML у PDF та WORD

GroupDocs.Assembly надає Java API для автоматизації створення звітів із даних XML за допомогою шаблону DOCX або TXT. Він також підтримує JSON, CSV та інші джерела даних для перетворення даних у презентабельні звіти різних форматів файлів.

Завантажити або налаштувати

Ви можете завантажити файл JAR із розділу завантажень або просто отримати репозиторій і конфігурації залежностей для pom.xml ваших програм Java на основі Maven.

<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>

Створення PDF-звіту з даних XML у Java

Давайте швидко перейдемо до кроків, які допоможуть вам перетворити XML-дані у відформатований PDF-звіт.

  • Завантажте джерело даних XML
  • Визначте шаблон відповідно до своїх даних XML
  • Надайте джерело даних XML і шаблон для методу створення звіту.
Звіт XML у PDF на Java

Дані 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>>

Кроки Java для створення PDF-звіту з XML

Наступні кроки та код дозволяють автоматизувати створення PDF-звітів із XML-даних відповідно до визначеного шаблону.

  • Визначте файл даних XML, файл текстового шаблону та файли вихідних звітів PDF.
  • Створіть екземпляр XMLDataSoure із файлом даних XML.
  • Створіть DataSourceInfo із визначеним джерелом даних XML.
  • Викличте метод assembleDocument, щоб створити звіт PDF.

Наведений нижче код реалізує описані вище кроки та генерує PDF із джерела даних XML у Java.

// Створення PDF-звіту з даних XML за допомогою шаблону TXT у Java
// Визначте джерело даних, шаблон і файли вихідних звітів.
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);

Створення звіту MS Word із даних XML у Java

Так само ви можете створити звіт MS Word DOC/DOCX із тих самих даних XML у Java. Не буде жодної різниці, крім зміни назви вихідного файлу.

  • Завантажте файл даних XML.
  • Визначення шаблону у форматі TXT або DOCX.
  • Встановіть вихідний формат документа звіту як DOCX.
  • Надайте файл даних XML, шаблон і вихідний шлях до DocumentAssembler, щоб конвертувати XML у DOCX.

Наступний код перетворює XML і генерує файл DOCX за допомогою визначеного шаблону в Java.

// Створення звіту MS Word із даних XML за допомогою текстового шаблону в Java
// Визначте джерело даних, шаблон і файли вихідних звітів.
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-дані у формат PDF як звіт на Java. Крім того, ви бачили створення звіту у форматі DOC/DOCX із того самого XML за допомогою шаблону. Прочитавши серію «Створення звітів у форматі PDF і MS Word із JSON, CSV, XML, ви повинні навчитися створювати власну програму Java для створення звітів.

Подібним чином ви можете конвертувати багато інших джерел даних у звіт. Щоб отримати додаткові відомості, параметри та приклади, ви можете відвідати документацію і репозиторій GitHub. Якщо виникнуть додаткові запитання, зв’яжіться з нами через форум.

Дивись також