Java-EE-SpringMVC与MyBatis企业开发实战-6-Spring-MVC入门课件

上传人:痛*** 文档编号:253007107 上传时间:2024-11-27 格式:PPTX 页数:27 大小:1.01MB
返回 下载 相关 举报
Java-EE-SpringMVC与MyBatis企业开发实战-6-Spring-MVC入门课件_第1页
第1页 / 共27页
Java-EE-SpringMVC与MyBatis企业开发实战-6-Spring-MVC入门课件_第2页
第2页 / 共27页
Java-EE-SpringMVC与MyBatis企业开发实战-6-Spring-MVC入门课件_第3页
第3页 / 共27页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第,6,章,Spring MVC,入门,SpringMVC,与,MyBatis,企业开发实战,目 录,1,Spring MVC,入门简介,MVC,设计思想,MVC,即,Model-View-Controller,,把一个应用的输入、处理、输出流程按照,Model,、,View,、,Controller,的方式进行分离,这样一个应用被分成三个层,模型层、视图层、控制层。,MVC,设计思想,MVC,是一种复合模式,结合了观察者模式、策略模式、组合模式、适配器模式。,模型使用观察者模式,,以便观察者更新,同时保持两者之间的解耦。控制器是视图的策略,视图使用组合模式实现用户界面。适配器模式用来将模型适配成符合现有视图和控制器的需要的模型。,这些模式合作,把,MVC,模式的三层解耦。,MVC,设计思想,视图,(View),代表用户交互界面,对于,Web,应用来说,可以是,HTML,,也可能是,jsp,、,XML,和,Applet,等。一个应用可能有很多不同的视图,,MVC,设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型,(Model),处理。,比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。,MVC,设计思想,模型,(Model),:是业务的处理以及业务规则的制定。模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计是,MVC,最主要的核心。,MVC,设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次很重要,抽象与具体不能隔得太远,也不能太近。,MVC,并没有提供模型的设计方法,而只是组织管理这些模型,以便于模型的重构和提高重用性。,业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据保存(持续化)。比如将一张订单保存到数据库,从数据库获取订单。我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。,MVC,设计思想,控制,(Controller),可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。,例如,用户点击一个连接,控制层接受请求后,并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型。,Jsp model 1,架构,Model 1,的基础是,JSP,文件,它由一些相互独立的,JSP,文件和其他一些,Java Class,组成。这些,JSP,从,HTTP Request,中获得所需要的数据,处理业务逻辑,然后将结果通过,Response,返前端浏览器。,Model 1,的应该说是唯一的好处是“简单”,可以大大加快系统的开发进度。它把表现层和业务逻辑层柔和在一起,不利于以后的维护工作以及开发角色的分配,所以这种模式只能适合于小的系统开发。,Jsp model 2,架构,Model 2,采用面向对象技术实现,MVC,模式 从而扩展,JSP/Servlet,的模式。,Model2,是,MVC,在,Web,上的应用。,一个,Model 2,规范实现的,Web,框架,一个,Model 2,规范实现的,Web,框架,视图层采用,JSP,实现;控制层采用,Servlet,实现,整个框架采用同一个,Servlet,,以实现请求的中转;模型层采用,Java,实现,主要决定用来做什么;在模型层后添加了一个,DAO,,目的是将决定做什么和具体怎么做分开。,整个,Web,框架大致的流程是:首先客户端发送请求,提交,JSP,页面给中转器(,Servlet,);中转器根据客户的请求,选择相应的模型层,即,Logic,,,Logic,进行相应的逻辑处理;如果需要使用数据库,则通过,DAO,进行相应的数据库操作。,Spring MVC,架构,Spring MVC,是结构最清晰的,MVC Model 2,实现。它的处理用户请求的组件称做,Controller,;,Controller,接收,request,response,参数,然后返回,ModelAndView,(其中的,Model,不是,Object,类型,而是,Map,类型)。,Controller,作用类似于,Struts2,中的,Action,Spring Web MVC,请求处理流程,Spring MVC,特点,清晰的角色划分:控制器(,controller,)、验证器(,validator,)、命令对象(,command object,)、表单对象(,form object,)、模型对象(,model object,)、,Servlet,分发器(,DispatcherServlet,)、处理器映射(,handler mapping,)、视图解析器(,view resolver,)等。每一个角色都可以由一个专门的对象来实现。,强大而直接的配置方式:将框架类和应用程序类都能作为,JavaBean,配置,支持跨多个,context,的引用,例如,在,web,控制器中对业务对象和验证器(,validator,)的引用。,可适配、非侵入:可以根据不同的应用场景,选择合适的控制器子类(,simple,型、,command,型、,form,型、,wizard,型、,multi-action,型或者自定义),而不是从单一控制器(比如,Action/ActionForm,)继承。,Spring MVC,特点,可重用的业务代码:可以使用现有的业务对象作为命令或表单对象,而不需要去扩展某个特定框架的基类。,可定制的绑定(,binding,)和验证(,validation,):比如将类型不匹配作为应用级的验证错误,这可以保存错误的值。再比如本地化的日期和数字绑定等等。在其他某些框架中,你只能使用字符串表单对象,需要手动解析它并转换到业务对象。,可定制的,handler mapping,和,view resolution,:,Spring,提供从最简单的,URL,映射,到复杂的、专用的定制策略。与某些,web MVC,框架强制开发人员使用单一特定技术相比,,Spring,显得更加灵活。,灵活的,model,转换:在,Springweb,框架中,使用基于,Map,的 键,/,值对来达到轻易地与各种视图技术的集成,。,Spring MVC,特点,可定制的本地化和主题(,theme,)解析:支持在,JSP,中可选择地使用,Spring,标签库、支持,JSTL,、支持,Velocity,(不需要额外的中间层)等等。,简单而强大的,JSP,标签库(,Spring Tag Library,):支持包括诸如数据绑定和主题(,theme,)之类的许多功能。,JSP,表单标签库:在,Spring2.0,中引入的表单标签库,使得在,JSP,中编写 表单更加容易。,Spring Bean,的生命周期可以被限制在当前的,HTTP Request,或者,HTTP Session,。,目 录,1,Spring MVC,入门简介,2,Spring MVC,核心组件,3,Spring MVC,注解,Spring MVC,重要组件,1.spring mvc,请所有的请求都提交给,DispatcherServlet,它会委托应用系统的其他模块负责负责对请求进行真正的处理工作。,2.DispatcherServlet,查询一个或多个,HandlerMapping,找到处理请求的,Controller.3.DispatcherServlet,请请求提交到目标,Controller4.Controller,进行业务逻辑处理后,会返回一个,ModelAndView5.Dispathcher,查询一个或多个,ViewResolver,视图解析器,找到,ModelAndView,对象指定的视图对象,6.,视图对象负责渲染返回给客户端,Spring MVC,架构类图,DispatcherServlet,DispatcherServlet,应用了,“,Front Controller,”,模式,是所有,Spring MVC,请求的中枢。,继承了,HttpServlet,,是一个,Servlet,,由,WebApplicationContext,加载,如果不作其它配置,会加载默认组件,在,web.xml,配置,DispatcherServlet,dept,org.springframework.web.servlet.DispatcherServlet,springapp,*.htm,约定优于配置,springapp,Sevlet,的名字叫做,springapp,,,系统会自动找到,spring,配置文件的名字为,springapp,-servlet.xml,(,会加上,servlet.xml,的后缀,),定义控制器类,import javax.servlet.ServletException;,import javax.servlet.http.HttpServletRequest;,import javax.servlet.http.HttpServletResponse;,import org.springframework.web.servlet.ModelAndView;,import org.springframework.web.servlet.mvc.Controller;,public class HelloController implements,Controller,/返回ModelAndView对象,public,ModelAndView,handleRequest,(HttpServletRequest request,HttpServletResponse response),throws ServletException,IOException,/向request域中放入1条信息,给前端jsp用,request.setAttribute(message,hello,springmvc);,/返回jsp的路径,return new ModelAndView(,hello,.jsp,);,springapp-servlet.xml,配置,这个配置中核心语句为:,jsp,页面,hello jsp页面,显示服务器信息如下:,$requestScope.message,访问,hello.htm,将会显示教材图的结果页面,谢谢!,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!