FreeMarker Overview
FreeMarkerはVerocityと並ぶTemplateエンジンで、最近ではWebWorkのViewテンプレートに
FreeMarkerの対応を行ったことで有名になった。
Velocityと同様にHTML, PostScript, TeX, ソースコードなどテキストファイルの出力ができる。
歴史は結構古く、1999年頃にはプロジェクトは存在していて2002年にはVersion2.0が書き直されて
リリースされている。そして現在に至っているようだ。また、プロジェクトも活発でBugFixや新機能の
実装など意欲的な新しいバージョンがリリースされている。
テンプレート内でJSP taglibを使用できたり、DOM操作、最近はやりのスクリプト言語のJython、
Rhino(正式にはサポートしてないが)をサポートするなどかなり高機能だ。
テンプレートの中で使用できる構文にBuilt-inとDirectiveがあり、Built-inは出力内容に関しての
便利な関数郡といった感じで、ゼロサプレス、日付のフォーマットが簡単に行える。
Directiveは出力内容そのものを制御するものという感じで、if文やincludeなどが使える。
使用方法も非常に簡単で、ドキュメントもまとまっていてわかりやすい。
SpringではFreeMarkerを簡単に使えるようにFactoryBeanなどが用意されている。