MVC模式总结(2)
在JSP和Servlet技术发展过程中,出现了2种典型的规范:Model1和Model2.
一.Jsp Model 1
1.传统的Jsp Model 1模型
Jsp是独立的,自主完成所有的任务。即:
JSP页面中看同时实现内容的展示、业务逻辑的编写、流程的控制,从而快速完成应用开发。
所以说Model1 以JSP为中心。
在Model 1模式下,JSP页面接收处理客户端请求,对请求处理后直接做出响应。用少量的JavaBean来处理数据库连接、数据库访问等操作。所以说,Model1就是JSP和JavaBean。
Model 1模式的实现比较简单,适用于快速开发小规模项目。但从工程化的角度看,它的局限性非常明显:JSP页面身兼View和Controller两种角色,将控制逻辑和表现逻辑混杂在一起,从而导致代码的重用性非常低,增加了应用的扩展性和维护的难度。Model1的最大缺点就是控制层与视图层没有分开,没有使用Servlet进行流程控制。
2.改进的Jsp Model 1模型
Model 2已经是基于MVC架构的设计模式。在Model 2架构中,Servlet作为前端控制器,负责接收客户端发送的请求,在Servlet中只包含控制逻辑和简单的前端处理;然后,调用后端JavaBean来完成实际的逻辑处理;最后,转发到相应的JSP页面处理显示逻辑。
Jsp页面与JavaBeans共同协作完成任务
3.Jsp Model1的优点:
这种架构模型非常适合小型Web项目的快速开发,而且对Java Web开发人员的技术水平要求不高4.Jsp Model1的缺点:
I.HTML和JAVA强耦合在一起,导致页面设计与逻辑处理无法分离
II.可读性差,调试困难,不利于维护
III.功能划分不清
二.Jsp Model2
1.Jsp Model2中使用了三种技术JSP、Servlet和JavaBeans
Jsp负责生成动态网页,只用做显示页面。
Servl et负责流程控制,用来处理各种请求的分派。
JavaBeans负责业务逻辑,对数据库的操作。
2.使用Jsp Model2的交互过程:
用户通过浏览器向Web应用中的Servlet发送请求,Servlet接受到请求后实例化JavaBeans对象,调用JavaBeans对象的方法,JavaBeans对象返回从数据库中读取的数据。Servlet选择合适JSP,并且把从数据库中读取的数据通过这个JSP进行显示,最后JSP页面把最终的结果返回给浏览器。
3.Jsp Model2优点
I.消除了Jsp Model1的缺点:
II.该模式适合多人合作开发大型的Web项目
III.各司其职,互不干涉
IV.有利于开发中的分工
V.有利于组件的重用
4.Jsp Model2缺点
Web项目的开发难度加大,同时对开发人员的技术要求也提高了