在基于请求(操作)的 MVC 中,单个前端控制器 servlet 将根据请求 URL/参数委托给操作模型。您直接使用原始数据HttpServletRequest and HttpServletResponse动作模型中的对象。您必须自己编写代码来收集、转换和验证请求参数,并在必要时更新模型值,然后才能调用业务操作。
在基于组件的 MVC 中,单个前端控制器将收集、转换和验证请求参数并更新模型值本身,以便您只需要自己担心业务操作。控制器需要如何收集/转换/验证/更新值是在单个位置(视图)中定义的。由于“纯”HTML 不可能实现这一点,因此需要特定的标记语言来实现该目标。对于 JSF 2.0,它是基于 XML (XHTML) 的。您使用 XML 来定义 UI 组件,这些组件又包含有关控制器应如何收集/转换/验证/更新模型值并生成/呈现必要的 HTML 表示的信息。