Excel出力

現在、作っている社内システムは出力帳票をExcelで作る必要があります。
調べたところRailsはExcelを作る機能はない(当たり前か)ので、
Rubyの他のライブラリを調べましたところ、Spreadsheetなるものが
ありましたので、早速使ってみました。
おぉ、軽快、軽快。いい感じです。
ただ、罫線などが引けないとかスタイルが指定できないなど
ちょっと業務アプリで使用するには、寂しい感じです。
それで、次ぎに考えたのは”JavaBridge”です。
これは、RubyからJavaを、言語レベルでほぼ制御できます。
Good Job!!
それで、JavaでExcelを制御するEJakarta POIをRubyから使ってみました。
良い感じでExcelファイルが作成できました。
めでたし。めでたし。
と言いたいところでしたが、問題がありました。
JavaBridgeは、どうもJavaのメソッドをコールする毎にRubyからJavaに
コールしているらしく、その頻度が多くなると、そのオーバヘッドで
めちゃくちゃ速度が遅くなってしまいます。
例えば、同じ処理をSpreadsheetで実行すると 1秒に対し、JavaBrideだと90秒
かかったりします。
このような欠点がありますが、上記を考慮した上でJavaBridgeを使用すれば、
Rubyは最強になりそうですね。
ところで、本題のExcelはどうしようかな。。。続く。

コメントをどうぞ