| ||||||||||||
| 前のページ 1 2 3 4 次のページ | ||||||||||||
| 最近のアーキテクチャ | ||||||||||||
そういった問題点を解決するために、最近では図2のようなアーキテクチャが利用されるようになってきました。 ![]() 図2:最近のアーキテクチャ DIはビジネスロジックからオブジェクト間の依存性を排除します。設定ファイル、アノテーションなどを用いて、DIコンテナから依存性を注入し、Javaオブジェクトを結合することで、POJO(Plan Old Java Object)での開発を実現します。 AOPはトランザクション、セキュリティ、トレース出力などの本来オブジェクトが実装するべきビジネスロジック以外の前処理や後処理、またはその呼び出しをAOPコンテナから注入し、POJOを実現します。POJOで実装することにより、コンテナにデプロイする必要がなく、JUnitなどを用いたテストが可能となり、単体テストが容易になります。 DIxAOPコンテナで代表的なものは「Spring」「Seasar2」「PicoContainer」などがあげられます。 また、DBアクセスについてもO/Rマッピングツールを利用することで、Entity BeanのようにDBのデータをオブジェクトとして扱うことができ、またコンテナに依存しないため、単体テストも容易になります。 | ||||||||||||
| 今回の内容 | ||||||||||||
第1回目の連載ではプレゼンテーション層のWebアプリケーションフレームワークである「Struts」「Tapestry」「Velocity」について紹介します。また今回紹介するWebアプリケーションフレームワークの比較をしますので、今後の参考にしてもらえればと思います。 | ||||||||||||
| Struts | ||||||||||||
StrutsはWebアプリケーションを開発するためのオープンソースのフレームワークの1つで、Apache Software Foundationで開発されています。StrutsはJavaBeans、JSP、Servletを用いた、MVCモデル2と呼ばれる「モデル・ビュー・コントローラ(MVC)アーキテクチャ」を採用しています。 Strutsでは、主にMVCモデルのコントローラの機能を提供しており、開発者はモデルとビューを開発する必要があります。これらはStrutsの設定ファイル(struts-config.xml)によって関連づけします。ビューには主にJSPを使用しますが、後述するVelocityなどを使用することもできます。 またJSPを使用する場合は、提供されているStrutsのタグライブラリが利用できます。Strutsのタグライブラリを利用することによって、肥大化しやすいJSPに記述するスクリプトレットを大幅に軽減できます。 システム開発にStrutsの適用する場合、表1のメリットがあげられます。
| ||||||||||||
表1:Strutsのメリット | ||||||||||||
| Strutsの基本的な使い方については「徹底比較!! PHP & Java 〜 フレームワーク編」の連載の中でも紹介していますので、そちらも参考にしてください。 また最新バージョンは1.2.7(2005年9月現在)です。 | ||||||||||||
| 前のページ 1 2 3 4 次のページ | ||||||||||||
| ||||||||||||
| ||||||||||||



