jXLS
Fisshplateと同じようにExcelファイルをテンプレートとして、動的にデータを埋め込んだExcelを生成するオープンソースのツールにはjXLSというのもありました。サンプルを見ればすぐにイメージはつかめると思いますが、
Department department; ... //initialization Map beans = new HashMap(); beans.put("department", department); XLSTransformer transformer = new XLSTransformer(); transformer.transformXLS(xlsTemplateFileName, beans, outputFileName);
のようにMapにつめて渡したデータを、テンプレートで繰り返しや条件分岐をしながらELを使ってアクセスします。このあたりはFisshplateと同じですね。
EL式が、FisshplteはOGNLで、jXLSはJXELですが、そんなにできることに違いはないように見えます。あとはjXLSには
- テンプレートにSQLを記述してDBから直接データを引っ張ってきてくれる機能(SQL Reporting)
- 独自の行単位でのカスタムプロセッサを追加する機能(Custom Processor)
もあるようです。カスタムプロセッサはFisshplatでも可能とどこかで見た記憶はありますが。