J2EEプラットフォームのJDeveloperサポートについて

対話型エンタープライズ・アプリケーションのJ2EEアーキテクチャ・デザイン・パターンは、Model-View-Controller(MVC)と呼ばれています。MVCパターンは、分散アプリケーション・ロジックを複雑なユーザー・インタフェースと結合するようなアプリケーションに適しています。MVCパターンに基づいてアプリケーションを開発する場合、目標はアプリケーション・ロジックとユーザー・インタフェースを分離、つまりパーティション化することです。

ほとんどの一般用語では、モデルは基礎となる論理的な表現、ビューは視覚的な表現であり、コントローラはユーザー入力の方法を指定するものです。データ・モデルが変化すると、依存するすべてのビューに通知されます。この状態と表現の分離により、エンタープライズ・アプリケーションの実装には次のような特性があります。

ビューはコントローラを使用して、レスポンス・メカニズムを指定します。たとえば、コントローラは、キーボードの入力を受け取ったときに実行するアクションを決定します。これを実行するには、2つのレイヤー間で情報を受け渡す追加オブジェクトが必要ですが、実行する価値があります。各層でアプリケーション・レイヤーを適切に分類することで、開発チームはロールと職責を簡単に分割できます。

次の表に示すように、JDeveloperでは、設計時にモデル、ビューおよびコントローラ間の結合が確立されるため、統合作業が最小限に抑えられます。

レイヤー

ブラウザベースのWebアプリケーション

Javaクライアント・アプリケーション

モデル・レイヤー

シン・データ・バインディング・レイヤーは、WebアプリケーションおよびJavaクライアントの場合と同様に、Oracle ADFモデル・レイヤーと呼ばれ、ビジネス・オブジェクトへのアクセスを提供します。Webアプリケーションでは、モデル・レイヤーのインスタンスはJSF管理BeanまたはStrutsアクション・クラスによって作成されます。

シン・データ・バインディング・レイヤーは、JavaクライアントおよびWebアプリケーションの場合と同様に、Oracle ADFモデル・レイヤーと呼ばれ、ビジネス・オブジェクトへのアクセスを提供します。Javaクライアント・アプリケーションでは、モデル・レイヤーのインスタンスはパネルの初期化時にJavaコードで作成されます。

ビュー・レイヤー

HTML、JavaServer Faces(またはStruts)およびJSTLは、JSP Webアプリケーションのビュー・レイヤーを構成します。JDeveloperは、Oracle ADF Facesと呼ばれる独自のFacesコンポーネントも提供しています。JSFとStrutsの両方が、モデル・レイヤーと統合する設計時のすべての機能をサポートしています。

標準のSwing UIコンポーネントは、Javaクライアント・グラフィカル・ユーザー・インタフェースのビュー・レイヤーを構成します。JDeveloperは、SwingコンポーネントおよびADF Swingコントロールと呼ばれる(チャット・コントロールのような)特殊な複合ウィジェット用に、設計時のモデル・レイヤーとの統合を提供します。

コントローラ・レイヤー

ビュー・レイヤーからモデル・レイヤー内の適切なアクションに受信リクエストをディスパッチする、JSFアクション・サーブレット。Oracle ADF Facesテクノロジは、JSFコントローラとも完全に統合されます。

標準のSwing UIコンポーネントは、Javaクライアントのコントローラ・レイヤーのロールを実行します。また、JDeveloperはSwingコンポーネントとの設計時の統合も提供します。

 


MVCデザイン・パターンとOracle ADFについて
モデル2とモデル1のアーキテクチャについて

J2EEアプリケーションの開始