Struts を使用する Web アプリケーションの GUI を構築するために、どの Ajax フレームワーク/ツールキットを推奨できますか?
5 に答える
AJAX/javascript ライブラリの選択は、バックエンドの実装方法に依存するのではなく、UI がどうなるかに依存する必要があると思います。
あなたのサイトがほとんどの場合、いくつかの AJAX がスローされた静的な Web ページになる場合は、jqueryなどのより軽量な JavaScript フレームワークを使用することをお勧めします。しかし、ユーザーが 1 つのページ (gmail、Google カレンダーなど) に長時間滞在する Web アプリケーションのような UI を作成している場合は、おそらくDojo、ExtJs、またはGWTを検討することをお勧めします。
Struts にはすでにDojoフレームワークが付属しています。アプリケーションのテーマを ajax に設定すると、それを使用できるようになります。
struts.properties ファイルの struts.ui.theme プロパティを見てください!
あなたが読むのに良い記事はJavaWorldのこれです
ExtJS ( http://extjs.com/ ) を使用します。非常に優れたコンポーネントとイベント モデル、および非常に優れたサポートを備えています。それは最高のAJAXです;)
JSON 応答でアクションを使用して、Ext フロントエンドにデータを提供できます。クライアント フロントエンドとサーバー フロントエンドを混在させる必要さえありません (JSPX / タグを介して)。
Ext の欠点として、クライアント フロントエンドをサーバー フロントエンドから分離して開発しなければならないという事実を見る人もいます。HTMLであれJavascriptであれ、クライアントフロントエンドコードの行を変更せずに、Extで構築されたWebアプリケーションをJavaバックエンドから.Netバックエンドに切り替えたので、そうではないと思います。
決定する前に、Ext の例とドキュメントを参照してください。
すでに言及されていますが、もう一度言います: jQuery. jQuery の強みは、単純な AJAX 呼び出しや優れた UI 拡張ライブラリを作成できることだけではありません。私の謙虚な意見では、jQuery の最も優れた点は、返されたデータを簡単に処理できることです。jQuery を使用すると、HTML と同じように XML を簡単にナビゲートできます。
たとえば、xml リクエストが返されたとします。
(: この XML ドキュメントは、MarkLogic トレーニング ファイルから借用しました :)
<author name="Boynton">
<book>
<title>Barnyard Dance!</title>
<year>1993</year>
</book>
<book>
<title>Hippos Go Berserk!</title>
<year>1996</year>
</book>
</author>
jQuery は、次の単純なコマンドですべての年の要素を取得できます。
var years = $("year");
//Ok, lets act on each element instead
$("year").each(function(index, value){
alert("Element " + index + " = " + value);
});
/* OUTPUT
Element 0 = 1993
Element 1 = 1996
/*
通常のJavascriptでそれをやってみてください!
さらに、jQuery の設計方法は単純に美しいものです。創設者は、ライブラリのコアに拡張機能を作成する機能を追加することにより、フレームワークを拡張することを奨励しています (Javascript ファイルをいつでも編集できますが、フレームワークに重要な更新がある場合はどうなりますか)。
jQuery を使用するもう 1 つの大きな理由は、他の Javascript フレームワークとの互換性です。デフォルトでは、Prototype と jQuery の両方が "$" 記号を使用してメイン ライブラリ オブジェクトを参照します。Prototype と共存できるように、この参照を削除する機能を追加するのは jQuery だけです。
jQuery は JavaScript を楽しくします。