2012-08-03 50 views
6

我有一個需要生成excel表格中報告,它看起來像下面的模板 - Excel Report什麼是在Java中渲染Excel工作表報告的最佳實踐?

我知道這是可以使用庫來完成像JExcelApiApache POI。不過,我想知道是否有辦法通過編寫類似於編寫Apache Velocity模板發送電子郵件的模板來完成此操作。

如果有一個標準的,良好的實踐方法來生成這樣的報告是什麼?

+0

下列哪個模板? – Sikorski 2012-08-03 11:17:31

+0

上傳的圖片就是我所說的'模板' – ping 2012-08-03 11:36:51

回答

7

爲什麼不使用Excel創建樣式化模板?對於應該替換的值,使用佔位符(如$ {name.of.field}),否則按需要設置樣式。使用不同的佔位符標記模板的結尾(這將允許您在此空間外寫入註釋或其他數據,以記錄您的模板)。

然後,或者通過JExcelApi的或Apache POI,

  • 打開模板文件,並定位結束模板標記。
  • 打開每條記錄的目標文件
  • ,從模板複製領域,替代$ {} XYZ爲 - 值的實際內容 和停止,一旦你達到你最終的模板標記。
  • 接近目標&模板

模板修改將是非常容易的。唯一的問題是保持字段名稱同步。

+0

Upvoted。聽起來不錯。我想在這個問題上打開一個賞金來檢查是否有更多的選擇。謝謝! – ping 2012-08-04 08:49:07

+0

創建「樣式模板」與使用JXLS有何不同?如果沒有,請編輯你的答案,包括提及JXLS。 – ping 2012-08-04 11:41:13

+0

打開一個新的excel文檔。將其格式化爲您的內容。用佔位符填充它。將其稱爲「模板」,因爲您將在稍後複製它並填充佔位符。如果這就是JXLS所做的,我的建議是不要使用它:需求在哪裏? :-) – tucuxi 2012-08-04 11:46:02

1

您可以使用標準的Java報告庫,如i-net Clear Reports並使用excel輸出格式。

+0

只要有開源的庫可以完成工作,專有軟件就不是我的選擇。不過謝謝。 – ping 2012-08-04 11:36:55