2

私は最近 Python でZPTを使用しており、テンプレート言語が大好きです。Java に似たものを探していましたが、気に入ったものを実際に見つけることができませんでした。最も近いのはFreeMarkerです。

私が調べた FreeMarker やその他の Java テンプレート エンジンの問題は、準拠していない XML を許容する JSP スタイルの構文でした。有効な xml を必要とする「属性」言語であるように、Zope ページ テンプレートに似た Java テンプレート エンジンが存在するかどうか疑問に思っていました。

4

7 に答える 7

2

あなたが探しているテンプレートエンジンのかなりの数があると思います:

有効な html をサポートするその他のアプローチは次のとおりです。

于 2011-11-05T00:03:06.273 に答える
1

カメレオンに最も類似していることがわかるJavaテンプレートエンジンはThymeleafです。

于 2012-02-22T13:34:15.697 に答える
1

現在、私が知っている Javaの

于 2012-07-11T15:05:47.843 に答える
1

クライアントベースのテンプレートにはDistalがあります。

于 2012-03-13T07:24:40.900 に答える
1

FreeMarkerは AWT に厄介な依存関係があります。これにより、Google App Engine などで使用できなくなります。

私はすべての Java テンプレートのニーズにStringTemplateを使用することを好みます。これは、ロジックをテンプレートから厳密に分離する唯一の Java ベースのテンプレート システムです。

StringTemplate は、ソース コード、Web ページ、電子メール、またはその他の書式設定されたテキスト出力を生成するための Java テンプレート エンジン (C#、Python、Ruby、および Scala 用のポートを備えた) です。StringTemplate は、マルチターゲット コード ジェネレーター、複数のサイト スキン、および国際化/ローカリゼーションに特に適しています。

その際立った特徴は、他のエンジンとは異なり、モデルとビューの分離を厳密に実施することです。厳密に分離することで、Web サイトとコード ジェネレーターの柔軟性と保守性が向上します。また、悪意のあるテンプレート作成者に対する優れた防御も提供します。

XMLを生成しているので

一見するとわかりにくい別の解決策は、JAXB を使用することです。XML を生成する必要があるプロジェクトがここにあります。出力ファイル用に非常に明確に定義された XSD ファイルがあり、オブジェクトの構築とそれらのマーシャリングは非常に簡単で非常に簡単です。

于 2011-11-03T20:30:24.467 に答える
0

GXPはどうですか?

LSPxtemporeもあります。

于 2011-11-05T00:48:11.030 に答える
0

Apache Velocityもあります。ただし、テンプレートが有効な XML である必要はありません。質問を考えると、それはあなたにとって契約を破るかもしれません。ただし、コアクラスへの拡張機能を使用してそのルールを適用することはできます。

于 2011-11-03T21:15:52.397 に答える