2009-08-17 10 views
8

MVCアーキテクチャのサーブレットとJSPから始めて、Java EEを学びたいと思っています。サーブレットはしばしばコントローラとして使用され、JSPはしばしばビューとして使用され、これらは両方ともモデル、サーバー上のバックエンドJavaアプリケーションと相互作用することがわかります。私が尋ねる疑問は、バックエンドアプリケーションが何を構成するかということです。サーブレットとJSPをインタフェースとして使用する単純なJSEアプリケーション以上のものではありませんか?Java EE MVCの起動

また、おそらく簡単な質問がありますが、Java EE MVCのチュートリアルがありますか?

答えて

2
  1. JavaのWebプログラミングを行うには、サーブレット は必須ではありません。人々のプログラムのように、 jspを単に使うことができます。 & asp。それはかなりまっすぐ進む、 と簡単に始めた取得します。これはモデル1メソッドと呼ばれる です。モデル2プログラミングモデルについては
  2. あなたが本当にMVC プログラミングをしたい 場合、あなたは彼らがシーンの背後にどのように機能するかを 理解するために、「ページ コントローラ」と「フロントコントローラ」 設計pattersを学ぶことができます。

    既成の フレームワークを使用する場合は、Spring MVCを試すことができます。

http://www.vaannila.com/spring/spring-mvc-tutorial-1.html

幸運。

+0

サーブレットと豆のない単純なJSPページは醜いので、実際に開発する前に素早く機能をプロトタイプ作成する場合を除いては使用しないでください。 – Med

+2

それはすべての要求や時間枠、目的に依存しています。私たちは、「この技術を大いに活用しています。基準を考慮して "私がJSPを最初に提案した理由は、簡単に始めることができて、サーブレットMVCに気を取ってもいいと思ったからです。その後、SpringMVCやEJB3を試すこともできます。 – janetsmith

+0

Java EE MVCについて尋ねるときには、Spring MVCを推奨する必要がありますが、SpringはJava EEではありません。これは悲しい話です。 Java EEは適切なMVC(アクションベース)のフレームワークを持っていないので、Java EE 8で使用したいと考えています。 – siva636

9

Java EEコンポーネントは、GlassFish、JBoss、WebLogic、WebSphereなどのJava EEサーバー、またはサーブレットとJSPだけをサポートするTomcatなどのサーバー上でサーバー側で実行されます。

Java EEでは、MVC モデルは、「ドメインモデル」、つまりアプリケーションにとって重要なエンティティを表すJavaオブジェクトと考えることができます。たとえば、ショッピングアプリケーションには、購入アイテム、ショッピングカート、クレジットカード、郵送先住所、アカウント、レビューなどを表すドメインオブジェクトがあります。多くの場合、これらのドメインオブジェクトは、リレーショナルデータベースなどの永続ストレージから取得されます。

Java EEのJava Persistence APIは、オブジェクトを永続化するために使用されるJavaドメインモデルオブジェクトとリレーショナルデータベーステーブル間のマッピングを処理するように設計されています。 Hibernateは、JPA「オブジェクト・リレーショナル・マッパー」(ORM)の1つの実装です。

Java EEはこれ以上です。ほんの一例を挙げると、バックエンドのアプリケーションコンポーネントが互いに通信するために使用する超信頼性のあるメッセージングサービス(Java Message Service)を定義しています。

Java EEを探索する際には、Ruby-on-Rails、LAMPスタック、Microsoftの.NETプラットフォーム、Spring/Hibernateなどの軽量なJavaアプローチなど、より簡単で生産性の高い代替案を考えてください。 Richard Monson-Haefelは、O'Reillyの非常に成功した「Enterprise JavaBeans 3」を書いています。0 "(第5版)と" Java Message Service "では、claimまでJava EEが開発者を「脅迫している」と言われており、これらの他のアプローチによって覆い隠されている。

より広い視点はTodd Hoffの素晴らしいブログです。http://highscalability.com/

+3

.NETはJava EEよりも生産性が高いですか?方法を説明してください。 – siva636