JavaWeb中的Model 1与MVC/Model 2架构比较 - Go语言中文社区

JavaWeb中的Model 1与MVC/Model 2架构比较


MVC/Model 2架构

在Model 2架构中,请求处理、业务逻辑处理以及画面呈现被区分为三个不同的角色职责,在分工合作开发时,使用Model 2架构可以理清职责界限,网页设计者与Java代码或请求处理以及商务模型原件的设计之间不用相互考虑太多,分工较为明确。如下图是基于请求/响应修正的MVC而产生的Model 2结构:
基于请求/响应修正的MVC而产生的Model 2结构
在使用servlet来完成视图如上图,如果将视图部分改用JSP,模型部分封装应用程序或业务逻辑,就会将各个角色分别由以下的技术来实现:
Servlet/JSP的Model 2架构实现
其中的POJO全名为Plain Old Java Object,也就是纯粹的Java对象。

Model 1架构

在使用Model 2架构,有很多请求转发流程控制、元件设计和很多代码,需要花费更多的时间与设计成本,所以有了如下的JSP结合JavaBean,也就是Model 1架构, 如下图是一个简单的范例:
JSP与JavaBean的Model1架构实现

在Model 1架构上,用户直接请求某个JSP页面,JSP回收机请求参数并调用JavaBean来处理请求。业务逻辑的部分封装至JavaBean中,JavaBean中或许还会调用一些后端的原件(如操作数据库),JavaBean处理完成后,JSP会再从JavaBean中提取结果,进行画面的呈现处理,如下图是Model 1架构的职责分工:
Model 1架构的职责分工

由于Model1架构中,JSP页面还负责收集请求参数和调用JavaBean的职责,所以维护JSP就有些麻烦了,同时JSP页面若夹杂HTML和Java程序,也不利于分工合作,但Model 1的好处是可以减少请求转发的流程与角色设计区分,方便快速开发,两种架构的选择需要根据实际情况进行选择。

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/zhuxinquan61/article/details/52163070
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-04-19 10:08:58
  • 阅读 ( 973 )
  • 分类:架构

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢