Strutsの特徴 (Struts)
Strutsの特徴
- 必要な機能のみをシンプルに提供
- オーブンソースによる開発
- Apacheライセンスに基づき商用利用も可能
- モデルの実装には関与しない
- Strutsのサービススコープ(処理する領域)はWeb層にに特化しており、モデルの実装方法を規定していない。
- そのため、ビジネスロジックの実装方法をEJBでもJavaクラスでも実装可能であるため、自由度の高いアプリケーションの構築が可能である。
- ポータビリティの確保
- ほとんどすべてのアプリケーションサーバ(Webコンテナ)での動作可能
- API互換性の維持
- 洗練されたアーキテクチャ
- MVCモデル2
- Strutsが採用しているMVCモデル2アーキテクチャパターンの実装は、モデル・ビュー・コントローラのそれそれの結びつきは非常に弱く(疎結合)、1つの変更が及ぼす影響を最小限に抑えることができるように設計されている。
- そのため、それぞれの開発を分業でき、また平行して開発が可能である。
- 高い拡張性
- Chain of ResponsibikityデザインパターンをHTTPリクエストの処理に導入しており、処理順序を定義したXMLファイルを変更することで自由に処理内容や順序を変更・追加することが可能
- J2EE仕様との親和性
- プレゼンテーション部の作成は、JSPテクノロジを使用しているため、Java・サーブレット・JSP以外の特別な技術や知識を必要としない。
- リソースバンドルと同じ仕組みを利用したマルチリンガルと同じ対応を考慮した機能を持ち、ブラウザの言語によって返却するコンテンツを変更する機能が簡単に実現できる。
- モジュールによるアプリケーションの分割
- モジュール単位に分割することが可能なので、モジュールごとにあたかも別々のアプリケーションであるかのように設計・開発を行うことができる。
モジュールとは、Struts内部でのアプリケーションの管理単位のこと