差分Struts2のフレームワークとSpringMvcの枠組み

傍受の最初に、異なるメカニズム

  Struts2のは、あるクラスレベルインターセプタ、各要求アクションを作成し、Struts2のとActionBeanのSpring統合注入範囲は、プロトタイプモデルのプロトタイプである場合、次いでセッターによってプロパティに注入され、ゲッターは、現在のデータを要求します。Struts2のは、要求、応答コンテキストに対応するアクションは、パラメータを受信すると、属性が複数の方法で共有属性パラメータを説明しようとする、受信することができます。アクションのメソッドStruts2のは、URLに対応することができ、そしてそれはすべてのメソッドは、クラス属性を共有して、注釈またはそれ以外の場合は、それぞれの方法を識別することはできません、唯一のより多くのケースになるように設計することができます。

  SpringMVC レベルをインターセプトする方法であって、コンテキスト要求に対応する方法は、直接法は、実質的に独立した排他的要求、応答データです。どのように同時にかつURLに対応するそれぞれの方法は、送信パラメータをプロセスに直接注入されることができ、この方法は、ユニークです。ModeMapによってフレームに処理結果を返します。唯一のコントローラを作成するために、Spring統合、SpringMVCコントローラー豆のデフォルトシングルトンシングルトンなので、すべての要求のデフォルトは、財産のない共有があってはならないときは、デフォルトのスコープを変更したい場合は、それは、スレッドセーフであります@Scopeは、修正するために注釈を追加する必要があります。

  Struts2のインターセプタインターセプタは、独立したAOPの道である、SpringMVCを独自のメカニズムを持っている、これは設定ファイルにつながっているStruts2のSpringMVCの量よりも大きくなっています。

第二に、異なる基本的な枠組み

  Struts2のフィルタを使用して(StrutsPrepareAndExecuteFilter)実装、SpringMVC(のDispatcherServlet)サーブレットの実装が使用されます。容器が始まった後、フィルターは初期化され、サービスが後でサーブレットよりも、クラッシュ後に停止されます。お電話の際に初期化されたサーブレットでは、最初の呼び出しは、破壊されたサービスの停止をフィルタします。

第三に、パフォーマンス

  Sはすべての属性は、注射値ロードする必要があり、それぞれの要求に対処する新しいインスタンスに対応する、クラスレベルをインターセプトtruts2、方法は、単一のローディングモードの実施形態豆注射でSpringMVC傍受を基づいているのでSpringMVCは、ゼロコンフィギュレーションを実現します。Struts2のよりので、SpringMVCの開発効率とパフォーマンス。

第四に、コンフィギュレーション

  春MVCと春はシームレスです。Struts2のよりも、このプロジェクトの管理とセキュリティの高すぎます

 

注意:インターセプターとフィルタの違いを  :

 

  1. インターセプターJavaリフレクション機構は基づいており、フィルタは、コールバック関数に基づいています。
  2. インターセプタは、サーブレットコンテナ、およびフィルタに依存するサーブレットコンテナを依存していません。
  3. アクションのみ迎撃機能を要求することができ、およびフィルタは、ほぼすべての要求に基づいて行動することができます。
  4. アクション・インターセプタは、コンテキストにアクセスすることができ、オブジェクトのスタック、およびフィルタの値にアクセスすることはできません。
  5. ライフサイクルのアクションでは、インターセプタは複数回呼び出すことができ、かつコンテナが初期化されるとき、フィルタは一度だけ呼び出すことができます

おすすめ

転載: www.cnblogs.com/chx9832/p/11601394.html