欢迎来到天天文库
浏览记录
ID:61772698
大小:201.00 KB
页数:12页
时间:2020-02-06
《第6讲 MVC三层模式.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第6单元开发模式主要内容:1、MVC模式2、模型1JSP+javaBean3、模型2JSP+Servlet+JavaBean4、Struts模式MVC模式MVC是一种设计模式,是Model-View-Controller的缩写。它把应用程序分为3个部分:1.模型(Model)它代表了应用程序的核心功能,负责处理用户的数据,实现业务逻辑,为视图提供显示所用的数据,而且可以被多个视图所共用。2.视图(View)它主要是指与用户交互的界面,它接收用户的输入,但并不包括任何实际的业务处理,它只是简单地将数据转交给控制器,同时,它负责展现模型传递过
2、来的数据,当后台模型更新数据时,视图就会更新它的显示。3.控制器(Controller)控制器负责接收用户的请求和数据,再由它来做出判断将请求和数据交由哪个模型来进行处理,最后调用视图来显示模型返回的数据。MVC模式MVC模式的优点多个视图可以共享一个后台模型,这就为在一个应用中为客户提供多种用户界面提供了便利。当需要修改界面时,由于表示和业务逻辑分开,因此不需要改动后台模型,而可以直接修改界面。由于实现和界面独立,因此模型只需要提供接口提供给上层调用,从而实现信息封装和隐藏。当需要修改模型时,只要保证接口不变,原来的上层程序就可以不变。
3、而由于模型是面向接口编程,因此可以使用不同的实现来替换模型。控制器作为介于视图和模型间的控制组件,能够更好地维护程序流程,选择业务模型,选择用户视图,使程序的调用规则更加清晰。模型1:JSP+javaBeanJSP+javaBean这里,jsp充当控制器和视图的双重角色,javaBean则是控制器。Jsp直接调用后台模型来进行业务处理,同时,再由jsp返回处理结果到用户界面。优点是:模型简单,对于小型系统很实用。但缺点是:HTML标记和java代码混合,不利于维护,设计和程序没有分开,合作开发复杂。模型2:JSP+Servlet+Java
4、BeanJSP+Servlet+JavaBean不再用jsp做控制器了,而是使用Servlet作为控制器,jsp则单纯负责显示逻辑。客户向服务器发送请求时,Servlet接收请求,并根据自己的逻辑判断来调用相应的javaBean来处理用户的请求,而javaBean负责业务逻辑的处理和数据持久化等任务,等处理完成,javaBean返回结果,由Jsp将结果返回给客户浏览器。这种结果清晰地划分了表示,控制,模型3层,很好地实现了MVC的设计思想。模式二的优点模式二具有更清晰的页面表现和清楚的开发人员分工。可以充分发挥开发小组中界面设计人员的长
5、处,这些优势在大型项目中发现得尤为突出。使用这一模式,也可以充分发挥每个开发人员各自的特长;例如界面设计人员可以充分发挥自己的表现力设计出精美的界面表现形式,设计人员可以充分发挥自己的商业处理思维来实现项目中的业务处理。模式二的重要之处在于实现了显示层和业务逻辑处理层的分离,从而在应用系统的扩展性和可伸缩性方面得到大大增强。因此,在大中型项目中,往往会选择这种模式开发。Struts模型(基于模型2)Struts模型struts是著名的Apache开发的一套用于构建javaWeb应用程序的框架。它的目标是分离Web程序的表示层,控制层和后台
6、功能层,也就是MVC模式的实现。但和模型不同的地方在于,Struts提供了它自己的控制器组件,并且后台可以和JDBC,EJB,或者和Hibernate技术集成,视图方面,Struts使用了Jsp技术,并还可以将标记库技术,Velocity模板,XSLT技术结合起来。Struts采用了ActionServlet和Action来代替模型中的Servlet来作为控制器。Struts模型在Struts中,用户请求都由ActionServlet接收,然后根据用户请求的样式到struts-config.xml.中查找对应的子控制器,也就是对应的Act
7、ion。由Action来执行具体的控制器功能,并且调用相应的后台模型来完成业务逻辑的处理。Action执行它的execute()方法,返回一个ActionForward对象给ActionServlet,由ActionServlet对这个对象进行分析,并根据struts-config.xml来转发请求到另一个Action或者Jsp页面。用户通过视图表单发送数据时使用了一个ActionForm,它的作用是将用户提交的数据打包成一个Bean对象。而对于模型部分,Struts没有过多的限制,一般采用EJB或Hiberater等来实现模型部分。
此文档下载收益归作者所有