Struts アプリケーションでテンプレート エンジンを使用したいのですが、FREEMARKER や VELOCITY の代わりに TILES の使用が推奨されるかどうかを知りたいです。
3 に答える
プロジェクトで以前にタイルを使用したことがあります。テンプレート化には適していましたが、ベロシティやフリーマーカーと比較することはできません。タイルを使用すると、通常の JSP を使用でき、取得した JSP タグに制限されます。
Velocity (およびおそらく Freemarker は以前に使用したことはありませんが) は独自のタグまたは式言語を提供するため、次のように考えることができます。
Hello ${name}
これは、プレーンな JSP では実行できません。[コメントにより更新: JSP 2.0 には EL が含まれているため、そのようなことができます。ただし、できることという点では、Velocity や Freemarker の方が強力だと思います。]
多くの異なるコンポーネント (つまり、ヘッダー、サイドバーなど) を含むレイアウトがあり、さまざまな異なるテンプレートを定義したい場合、タイルは悪い選択ではありません。(ただし、かなりの量の XML になる可能性があることに注意してください!)
しかし、単純な JSP よりも「高度な」ものが必要な場合は、Velocity または Freemarker が最適です。
タイルと速度を使用します。
Tiles はページをコンポーネントに分割し、画面間でマークアップを再利用するのに最適ですが、Velocity は PHP の世界では非常にスマートな優れたテンプレート言語です。
タイルと速度のどちらかを選択するのではなく、両方を使用することをお勧めします。それらはお互いを非常によく補完します。
または、Stripes を使用することもできます。タイルよりずっと簡単!