栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

将JSF理解为MVC框架

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

将JSF理解为MVC框架

之所以在JSF和许多其他Web框架中通常不十分清楚,其一部分与MVC的哪一部分相对应,部分原因在于MVC模式最初是为桌面应用程序设计的。

在桌面应用程序中,节点M,V和C是最大连接图,这意味着每个部分都可以与其他每个部分进行通信。例如,如果模型发生更改,则可以将此更改推送到视图。如果在桌面应用程序中有视图的多种表示形式,这尤其明显。更改一个,然后实时查看另一个更新。

由于Web应用程序的客户端/服务器和请求/响应性质,经典MVC不会将1:1映射到大多数Web框架。

具体来说,在JSF中,映射如下:

模型-服务/ DAO以及它们产生和使用的实体。入口点是托管bean,但是在Java EE(JSF是其一部分)中,这些工件通常分别由EJB和JPA实现。
视图-UI组件及其组成的整个页面。这完全属于JSF领域,UIComponent分别由JSF和Facelets实现。
控制器-交通警察处理用户的命令和传入数据,将其路由到正确的部分并选择要显示的视图。在JSF中,没有编写此控制器,但是框架已经提供了它(它是FacesServlet)。
特别是最后一部分经常没有被很好地理解:在JSF中,您不需要实现控制器。因此,后备bean或任何其他类型的托管bean都不是控制器。


第一部分(模型)也不总是很清楚。业务逻辑可以由EJB和JPA实现,但是从JSF的角度来看,值绑定引用的所有内容都是模型。这也是JSF生命周期阶段之一的名称来自:Update Model。在此阶段,JSF将数据从UI组件推送到模型中。从这个意义上讲,(JSF)受管bean是模型。

尽管JSF本身没有明确定义概念,但是托管Bean经常重复使用和特定使用,称为后备Bean。

对于JSF,支持bean仍然是模型,但是实际上,它是位于Model,View和Controller中间的管道元素。由于它执行的某些任务可能被视为某些控制器任务,因此通常会误认为它是控制器。但是,如前所述,这是不正确的。它还可以执行一些模型任务,偶尔也可以执行一些视图逻辑。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/439038.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号