第8章Struts和MVC设计模式.ppt
《第8章Struts和MVC设计模式.ppt》由会员分享,可在线阅读,更多相关《第8章Struts和MVC设计模式.ppt(79页珍藏版)》请在优知文库上搜索。
1、第8章 Struts和MVC设计模式第8章 Struts和MVC设计模式8.1 MVC框架简介8.2 用Struts2实现MVC设计模式8.3 Struts的Web应用开发实例 8.4 小结 8.5 习题 8.1 MVC框架简介l在Web应用开发中,MVC框架应用非常广泛,特别是在大型的、比较复杂的项目中。8.1.1 MVC框架是什么 8.1.2为什么要用MVC 8.1.3 MVC的实现8.1.1 MVC框架是什么l基于Java的动态Web开发有两种常用的开发模型:Model1和Model2。lModel1 在Model 1模式下,整个Web应用几乎全部由JSP页面组成,JSP页面接收处理客户
2、端请求,对请求处理后直接做出响应。用少量的JavaBean来处理数据库连接、数据库访问等操作。Web服务器响应请求浏览器 JSPJavaBean企业数据库lModel 1模式的实现比较简单,适用于快速开发小规模项目。但从工程化的角度看,它的局限性非常明显:JSP页面身兼View和Controller两种角色,将控制逻辑和表现逻辑混杂在一起,从而导致代码的重用性非常低,增加了应用的扩展性和维护的难度。Model2lModel2实现了业务逻辑、显示逻辑和控制逻辑的分离,即是基于MVC的框架。lMVC框架即模型视图控制器(ModelViewController)设计模式。其中,M代表Model,V代
3、表View,C代表ControllerlMVC的目的是增加代码的可重用性,减少数据描述和应用操作的可耦合度,并提高代码的可读性。l同时,也可以使软件的可维护性、可扩展性、可修复性、灵活性以及封装性大大提高。在Model 2模式下,模型(Model)由JavaBean 充当,视图(View)由JSP页面充当,而控制器(Controller)则由Servlet充当。实例化(模型)JavaBeanWeb服务器响应请求浏览器(控制器)Servlet企业数据库(视图)JSPMVC包括以下三部分:l视图:视图是应用程序的表示层,代表用户交互界面。在Web应用中,交互界面可能是HTML界面,也有可能是XML
4、界面、Applet界面或其他界面。l模型:模型是应用程序的业务处理层,负责所有业务流程的处理和业务规则的制定。模型处理由控制器发来的视图的请求数据,并将最终的处理结果返回给视图。l控制器:控制器的作用实际上就是一个分发器,负责决定将请求数据转发给什么样的模型组件,以及决定选择什么样的视图来显示模型返回的数据。一个基于MVC的应用程序对用户请求的处理过程:(1)终端用户通过应用程序发出了一个请求,该请求被转发给控制器。(2)控制器收到该请求后,检查该请求然后决定用什么样的业务逻辑来处理该请求,这时控制器会将该请求转发给一个相应的业务组件去处理。(3)模型中包含处理该用户请求的所有业务组件,并且也
5、执行用户所需要的全部数据存取。代表终端用户查询检索出的任何数据都被打包返回给控制器。(4)控制器接收从模型返回的数据,并选择显示这些数据的相应的视图,然后将视图返回给用户。lMVC模式适合大型项目的开发,是组件式的开发,但开发起来相对Model1复杂,步骤较多。8.1.2为什么要用MVClMVC框架的优点如下:有利于程序的维护和功能的扩展。有利于开发中的分工。有利于组件的重用。8.1.3 MVC的实现【例例8.18.1】MVCMVC的实现。的实现。l本节采用JSPServletJavaBean技术开发一个体重指数测量程序。l本例是一个根据身高和体重数据来衡量体重状况的程序。l程序包含4个文件,
6、分别是:view_Table.jsp controller_Servlet.java model_Bean.java view_Result.jsp l对身高和体重数据的处理计算是在模型层实现的,其中运用的业务规则是世界卫生组织拟定的体重状况的判断标准。体重指数(BMI)的计算公式是:体重指数(BMI)=体重(kg)/身高(米)的平方 世界卫生组织拟定的BMI指数与体重状况的对应关系是:BMI在18.525 体重在正常范围 BMI大于25小于30 体重状况为超重 BMI大于30 体重状况为较肥胖 BMI小于18.5 体重状况为偏瘦(1)Model层的实现lModel(模型)层是软件中的核心模块
7、,负责实现软件所有的业务逻辑,所有的数据处理都是在这里进行的。Model层用JavaBean来实现。l类model_Bean是Model层的具体实现。新建一个类model_Bean,文件名为model_Bean.java,目录名为WEB-INF/src,存放在mvc_Test包中。Model_Bean.java文件源代码如下:package mvc_Test;public class model_Bean/构造函数public model_Bean()/私有成员private String result;private String bmi;/体重指数/公有成员public void setB
8、mi(String w,String h)/BMI体重指数double wt=Double.parseDouble(w);/将字符串类型的体重数据转换成double类型double ht=Double.parseDouble(h);/将字符串类型的身高数据转换成double类型double bmit=wt/(ht*ht);/按给定公式计算BMI体重指数bmit*=10;int bmitt=(int)bmit;bmit=(double)bmitt/10;bmi=String.valueOf(bmit);/通过在浮点型和整型之间,先后进行相互的强制转换,使BMI指数只保留一位小数。public S
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Struts MVC 设计 模式