0

MVC1 与 MVC2 有何不同?JSF MVC2 吗?面试官告诉我JSP是MVC1。这是真的吗?

4

1 回答 1

2

正确的术语是“模型 1 MVC 模式”“模型 2 MVC 模式”

在 Java 术语中,Model 1 MVC 模式在同一个地方有“视图”和“控制器”(例如,带有<jsp:useBean>scriptlet的单个 JSP 文件,或者带有out.println()编写 HTML 的单个 servlet)。Model 2 MVC 模式在物理上分离了“视图”和“控制器”。JSP/Facelets 页面是视图,servlet 是控制器。这允许多个视图使用单个控制器(根据前端控制器模式)。请注意,如果没有模型(本质上是一个简单的 Javabean 类,其中包含由控制器创建/操作并由视图呈现的数据),那么也没有 MVC 模式的方法。

JSF 绝对是 Model 2 MVC。控制器是FacesServlet. JSP 可以是模型 1 或模型 2,这取决于是否存在作为前端控制器的 servlet 以及在不首先调用控制器的情况下无法访问/无法使用 JSP 文件。我们的 servlets wiki 页面仅包含 Model 2 示例。

也可以看看:

于 2013-02-22T13:36:09.510 回答