この記事は主に Java における struts2 と Spring MVC の違いを紹介するもので、非常に優れており、必要な方は参考にしてください。
1. Struts2 は 1 つのリクエストに対応します。 SpringMVCはメソッドレベルのインターセプトであり、メソッドはリクエストコンテキストに対応し、メソッドはURLにも対応するため、アーキテクチャ自体から見ると、SpringMVCはRestful URLを簡単に実装できますが、Struts2アーキテクチャは実装が困難です。 Struts2のActionのメソッドです。URLに対応できますが、クラス属性はすべてのメソッドで共有されるため、アノテーションなどを使用して自身のメソッドを識別することはできません。
2. SpringMVC メソッドは基本的に独立しており、リクエストの応答データに排他的にアクセスできます。リクエストのデータはパラメータを通じて取得され、処理結果はメソッド間で共有されません。
3. Struts2は各リクエストをカプセル化する必要があるため、リクエストやセッションなどのサーブレットのライフサイクルの変数を各アクションで使用するためにマップにカプセル化し、スレッドの安全性を確保するため、原則としてより多くのメモリを消費します。
4. インターセプタの実装機構に関しては、Struts2 は独自のインターセプタ機構を持っていますが、SpringMVC は独自の AOP メソッドを使用するため、Struts2 の設定ファイルの量は SpringMVC よりも大きくなります。
5. SpringMVC の入り口はサーブレットですが、Struts2 はフィルターです (フィルターとサーブレットは異なることに注意してください。以前は、フィルターは特殊なタイプのサーブレットであると考えられていました)。これにより、異なるメカニズムが生まれます。ここでは、サーブレットとフィルターの違いについて説明します。
6. SpringMVC は Ajax を統合しており、@ResponseBody アノテーションを 1 つだけ実装することができ、Ajax を統合して処理する必要があります。プラグインを使用するか、自分でコードを作成して統合するのは比較的不便です。
7. SpringMVC 検証は、比較的柔軟で扱いやすい JSR303 をサポートしていますが、Struts2 検証はより面倒で、非常に複雑に感じられます。
8. Spring MVC と Spring はシームレスです。このプロジェクトの管理とセキュリティも Struts2 よりも高いです (もちろん Struts2 も異なるディレクトリ構造と関連する設定を通じて SpringMVC と同じ効果を実現できますが、xml 設定が必要な箇所が多くあります)。
9. 設計のアイデアに関しては、Struts2 は OOP プログラミングのアイデアに沿っていますが、SpringMVC はより慎重で、サーブレットを拡張しています。
10. SpringMVC のパフォーマンスは Struts2 よりも優れています。
11. SpringMVC は 100% ゼロ構成であると考えることができます。
以上がJava での struts2 と spring MVC の使用法の違いを比較するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。