JSON הוא פורמט של חילופי נתונים מעוצב וקריא להעברת נתונים עם תכונות. עם זאת, הנתונים הגדולים בפורמט JSON אינם ייצוגיים במיוחד וניתנים להבנה בקלות. אנחנו צריכים בעיקר להמיר את נתוני ה-JSON הגדולים לפורמט ייצוגי. מאמר זה ידריך אותך להמיר נתוני JSON לדוחות PDF ו-MS Word ב-Java באמצעות תבנית פשוטה.

API של Java Generation Report

אני אשתמש ב-GroupDocs.Assembly for Java API כדי להפיק דוחות מנתוני ה-JSON והתבנית שסופקו בפורמט DOCX ו-TXT. זה גם תומך בהפקת דוחות אוטומטית במספר פורמטים ממקורות נתונים CSV, XML.

הורד או הגדר

אתה יכול להוריד את קובץ ה-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.1</version> 
</dependency>

הפק דוח PDF מ-JSON Data ב-Java

בואו נקפוץ במהירות לשלבים שיובילו אתכם להמיר נתוני JSON לדוח ה-PDF המעוצב.

  • קבל מקור נתונים של JSON
  • הגדר תבנית לפי נתוני JSON
  • ספק מקור נתונים ותבנית JSON לקוד Java פשוט להפקת דוחות.
דוח JSON ל-PDF ב-Java

נתוני 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>>

שלבי Java ליצירת דוח PDF מ-JSON

השלבים הבאים וקוד Java מאפשרים המרה אוטומטית של נתוני JSON לדוח PDF לפי תבנית מוגדרת.

  • הגדר קובץ נתונים של JSON, קובץ תבנית txt ונתיבי קובץ דוח פלט PDF.
  • הצג את JsonDataSoure עם קובץ הנתונים JSON.
  • צור DataSourceInfo עם JsonDataSource מוגדר.
  • קרא לשיטת assembleDocument של המחלקה DocumentAssembler כדי להפיק את דוח ה-PDF מנתוני ה-JSON והתבנית שהוגדרה.
// צור דוח PDF מנתוני JSON באמצעות תבנית TXT ב-Java עם GroupDocs.Assembly API
// הגדר מקור נתונים, תבנית וקובצי דוחות פלט.
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);

הפק דוח MS Word מנתוני JSON ב-Java

באופן דומה, כמו יצירת דוחות PDF לעיל, אתה יכול ליצור בקלות את דוח DOCX על ידי:

  • הגדרת אותה תבנית בפורמט DOCX.
  • הגדר את פורמט מסמך דוח הפלט כ-DOCX.
  • שאר הקוד יישאר זהה כדי להפיק דוח MS Word DOCX מנתוני JSON.
// צור דוח Word מנתוני JSON באמצעות תבנית DOCX ב-Java עם GroupDocs.Assembly API
// הגדר מקור נתונים, תבנית וקובצי דוחות פלט.
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. במקרה של שאלות נוספות ואי בהירות, צור קשר עם התמיכה החינמית בפורום.

סיכום

אני מקווה שתרגיש בנוח לבנות יישום מבוסס Java משלך להפקת דוחות על ידי המרת נתוני JSON לפורמט PDF. באופן דומה, אתה יכול להפיק דוחות בפורמטים אחרים כמו DOCX באמצעות מקורות נתונים אחרים כמו CSV ו-XML.

ראה גם