背景
JavaのWebアプリケーションフレームワークのデファクトなった、Struts。しかしその後、Webアプリケーションフレームワークはさらに進歩を続けてゆき、今ではさまざまなWebアプリケーションフレームワークが登場することになった。
Seasar2、JSF(Java Server Faces)、Spring、Java以外でも、ASP.NET、Ruby on Railsなどなど。もちろんこれらのフレームワークにも、Strutsの影響が少なからずあるということは間違いないと思う。
Struts 1
そして、そのStrutsも、もちろんバージョンアップを続け、2008年6月22日現在、1.3.8 までバージョンアップを遂げている。このStrutsは、Struts 1(Struts1.x系)と呼ばれ、今でも、多くのユーザで使用され続けている。
WebWork
そして、この記事で紹介する、Struts2 とは、上記の Struts 1 の後継となるバージョンというのは名前からも容易に想像できる。しかし、後継となるバージョンとなっていながら、この2つの Struts には、互換性はなく、フレームワークとしても全く別のものになっている。もちろん内部的な処理・エンジン部分についても違いは大きい。
その理由としては、Struts2 の開発は、Struts1 をベースに開発されたのではなく、先にも紹介した、Struts に影響を受けたWebアプリケーションフレームワークのひとつである、WebWork というフレームワーク(実際はWebWork2)が元になっているからである。Struts の欠点を補うために、Struts チームは、WebWork チームと力を合わせ、Struts2 として生まれ変わったのです。
機能
詳細の内容については別途、必要に応じて説明していきますが、Struts1 から受け継がれてきている機能が洗練されていたり、最新の技術にも対応した構造となっている。Struts1 と互換性がない点、アプリケーションの作成手法が大きく異なる点から、なかなかユーザ側の移行は進んでいないようだが、インストール方法、Webアプリケーションの作成方法など解説しながら、Struts2 の良さを伝えていきたいと思う。
- MVCフレームワーク
- 洗練されたプラグイン機能
- アクションクラスのPOJO(Plain Old Java Object)への対応
- アノテーションによる設定ファイルの削減
- DIコンテナ(Dependency Injection)による依存関係の分離
このサイトでは今後、Struts2 のインストール方法、Struts2 によるWebアプリケーション作成方法、実用的なサンプルなど色々と紹介していきたいと思います。
コメントする