MVC1 は MVC2 とどう違うのですか? JSFはMVC2ですか? インタビュアーから、JSP は MVC1 であると言われました。本当ですか?
1 に答える
正しい用語は「モデル 1 MVC パターン」と「モデル 2 MVC パターン」です。
Java 用語では、Model 1 MVC パターンは同じ場所に「ビュー」と「コントローラー」があります (たとえば、<jsp:useBean>
またはスクリプトレットout.println()
を含む単一の JSP ファイル、またはHTMLを記述する単一のサーブレット)。モデル 2 MVC パターンは、「ビュー」と「コントローラー」を物理的に分離します。JSP/Facelets ページがビューで、サーブレットがコントローラーです。これにより、複数のビューで 1 つのコントローラーを使用できます (フロント コントローラー パターンに従って)。モデル (基本的には、コントローラーによって作成/操作され、ビューによって提示されるデータを保持する単純な Javabean クラス) の手段がない場合、MVC パターンの手段も存在しないことに注意してください。
JSF は間違いなくモデル 2 MVC です。コントローラーは、FacesServlet
. JSP はモデル 1 またはモデル 2 のいずれかになります。これは、フロント コントローラーとしてのサーブレットの存在と、最初にコントローラーを呼び出さないと JSP ファイルにアクセスできないか使用できないかによって異なります。サーブレットの wiki ページには、モデル 2 の例のみが含まれています。