JSON, özniteliklere sahip verileri iletmek için biçimlendirilmiş ve okunabilir bir veri değişim biçimidir. Ancak, JSON formatındaki büyük veriler çok fazla sunulabilir ve kolayca anlaşılabilir değildir. Çoğunlukla büyük JSON verilerini sunulabilir bir biçime dönüştürmemiz gerekir. Bu makale, JSON verilerini basit bir şablon kullanarak Java’da PDF ve MS Word raporlarına dönüştürmeniz için size rehberlik edecektir.
Rapor Oluşturma Java API’sı
Sağlanan JSON verilerinden ve şablondan DOCX ve TXT biçiminde raporlar oluşturmak için GroupDocs.Assembly for Java API’sini kullanacağım. Ayrıca CSV, XML veri kaynaklarından birden çok formatta otomatik rapor oluşturmayı destekler.
İndirin veya Yapılandırın
JAR dosyasını indirilenler bölümünden indirebilir veya maven tabanlı Java uygulamalarınızın pom.xml dosyası için depo ve bağımlılık yapılandırmalarını alabilirsiniz.
<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’daki JSON Verilerinden PDF Raporu Oluşturun
JSON verilerini biçimlendirilmiş PDF raporuna dönüştürmenize yol açacak adımlara hızlıca atlayalım.
- JSON veri kaynağını al
- Şablonu JSON verilerine göre tanımlayın
- Rapor oluşturma için basit java koduna JSON veri kaynağı ve şablonu sağlayın.
JSON Verileri
PDF rapor oluşturma için, yöneticilerin ve ilgili müşterilerinin aşağıdaki örnek JSON verilerini ve ayrıntılarını kullanacağım.
\[
{
"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}\]
}
\]
Şablon
Aşağıdaki şablonu TXT veya DOCX biçiminde tanımlayın. Bu, Yöneticiler ve ilgili Müşterileri ve ayrıntıları üzerinde yineleme yapılmasına izin verecektir. Bundan sonra, rapor oluşturmak için koda atlayabilirsiniz.
<<foreach [in managers]>>Manager: <<[Name]>>
Contracts:
<<foreach [in Contract]>>- <<[Client.Name]>> ($<<[Price]>>)
<</foreach>>
<</foreach>>
JSON’dan PDF Raporu Oluşturmak için Java Adımları
Aşağıdaki adımlar ve Java kodu, JSON verilerinin tanımlanan şablona göre otomatik olarak PDF raporuna dönüştürülmesine olanak tanır.
- JSON veri dosyası, .txt şablon dosyası ve PDF çıktı raporu dosyası yollarını tanımlayın.
- JSON veri dosyasıyla JsonDataSoure örneğini oluşturun.
- Tanımlı JsonDataSource ile DataSourceInfo oluşturun.
- Sağlanan JSON verilerinden ve tanımlı şablondan PDF raporu oluşturmak için DocumentAssembler sınıfınınassembDocument yöntemini çağırın.
// GroupDocs.Assembly API ile Java'da TXT şablonunu kullanarak JSON verilerinden PDF Raporu oluşturun
// Veri kaynağı, şablon ve çıktı raporu dosyalarını tanımlayın.
String jsonFilePath = "dataPath/ManagerData.json";
String templateFilePath = "templatePath/template.txt";
String reportFilePath = "reportsPath/reportFromJSON.pdf";
// JSON veri kaynağının örneğini oluşturun
JsonDataSource datasource= new JsonDataSource(jsonFilePath);
DataSourceInfo dataSourceInfo = new DataSourceInfo(datasource,"managers");
// Rapor oluştur
DocumentAssembler assembler = new DocumentAssembler();
assembler.assembleDocument(templateFilePath,reportFilePath,dataSourceInfo);
Java’daki JSON verilerinden MS Word Raporu oluşturun
Benzer şekilde, yukarıdaki PDF raporu oluşturmada olduğu gibi, DOCX raporunu aşağıdakileri yaparak kolayca oluşturabilirsiniz:
- Aynı şablonu DOCX formatında tanımlama.
- Çıktı raporu belge biçimini DOCX olarak ayarlayın.
- JSON verilerinden MS Word DOCX raporu oluşturmak için kodun geri kalanı aynı kalacaktır.
// GroupDocs.Assembly API ile Java'da DOCX şablonunu kullanarak JSON verilerinden Word Raporu oluşturun
// Veri kaynağı, şablon ve çıktı raporu dosyalarını tanımlayın.
String jsonFilePath = "dataPath/ManagerData.json";
String templateFilePath = "templatePath/template.docx";
String reportFilePath = "reportsPath/reportFromJSON.docx";
// JSON veri kaynağının örneğini oluşturun
JsonDataSource datasource= new JsonDataSource(jsonFilePath);
DataSourceInfo dataSourceInfo = new DataSourceInfo(datasource,"managers");
// Rapor oluştur
DocumentAssembler assembler = new DocumentAssembler();
assembler.assembleDocument(templateFilePath,reportFilePath,dataSourceInfo);
Daha fazla ayrıntı, seçenek ve örnek için dokümantasyon ve GitHub deposunu inceleyebilirsiniz. Daha fazla soru ve belirsizlik olması durumunda, forumda ücretsiz destekle iletişime geçin.
Çözüm
JSON verilerini PDF biçimine dönüştürerek raporlar oluşturmak için kendi Java tabanlı uygulamanızı oluşturmakta kendinizi rahat hissedeceğinizi umuyorum. Benzer şekilde, CSV ve XML gibi diğer veri kaynaklarını kullanarak DOCX gibi diğer biçimlerde raporlar oluşturabilirsiniz.