最全最经典spring_mvc教程

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

    springmvc学习教程(一)-入门实例  引言1.MVC:Model-View-Control框架性质的C层要完成的主要工作:封装web请求为一个数据对象、调用业务逻辑层来处理数据对象、返回处理数据结果及相应的视图给用户。2.简要概述springmvcSpringC层框架的核心是DispatcherServlet,它的作用是将请求分发给不同的后端处理器,也即使用了一种被称为FrontController的模式(后面对此模式有简要说明)。Spring的C层框架使用了后端控制器来、映射处理器和视图解析器来共同完成C层框架的主要工作。并且spring的C层框架还真正地把业务层处理的数据结果和相应的视图拼成一个对象,即我们后面会经常用到的ModelAndView对象。一、入门实例1.搭建环境在spring的官方API文档中,给出所有包的作用概述,现列举常用的包及相关作用:org.springframework.aop-3.0.5.RELEASE.jar:与Aop编程相关的包org.springframework.beans-3.0.5.RELEASE.jar:提供了简捷操作bean的接口org.springframework.context-3.0.5.RELEASE.jar:构建在beans包基础上,用来处理资源文件及国际化。org.springframework.core-3.0.5.RELEASE.jar:spring核心包org.springframework.web-3.0.5.RELEASE.jar:web核心包,提供了web层接口org.springframework.web.servlet-3.0.5.RELEASE.jar:web层的一个具体实包,DispatcherServlet也位于此包中。后文全部在spring3.0版本中进行,为了方便,建议在搭建环境中导入spring3.0的所有jar包(所有jar包位于dist目录下)。2.编写HelloWorld实例步骤一、建立名为springMVC_01_helloword,并导入上面列出的jar包。步骤二、编写web.xml配置文件,代码如下:?xml  version=1.0  encoding=UTF-­‐8?  web-­‐app  version=2.5  xmlns=    xmlns:xsi=­‐instance      xsi:schemaLocation=          ­‐app_2_5.xsd    servlet        servlet-­‐namespring/servlet-­‐name                                      servlet-­‐classorg.springframework.web.servlet.DispatcherServlet/servlet-­‐class                                load-­‐on-­‐startup1/load-­‐on-­‐startup                /servlet                servlet-­‐mapping                                servlet-­‐namespring/servlet-­‐name                                  url-­‐pattern*.do/url-­‐pattern                /servlet-­‐mapping  /web-­‐app    !-­‐-­‐  所有请求都要由DispatcherServlet来处理,因此映射到/上面(包括静态页面),  load-­‐on-­‐startup不加经测试也未见出错,而且如果要修改spring-­‐servlet.xml的配置位置或名字,                    可以加  init-­‐param  param-­‐namecontextConfigLocation/param-­‐name  param-­‐value/WEB-­‐INF/spring-­‐servlet.xml/param-­‐value                    /init-­‐param  但一定要放到load-­‐on-­‐startup前面,否则xml校验出错(经测试)。                                  简要说明:DispatcherServlet就是一个Servlet,也是对请求进行转发的核心Servlet。在这里即所  有.do  的请求将首先被DispatcherServlet处理,而DispatcherServlet它要作的工作就是对请求进行分  发(也即是说把请求转发给具体的Controller)。可以简单地认为,它就是一个总控处理器,但事实上  它除了具备总控处理理器对请求进行分发的能力外,还与spring的IOC  容器完全集成在一起,从而可以  更好地使用spring的其它功能。在这里还需留意servlet-­‐namespring/servlet-­‐name,下面  步骤三会用到。                    -­‐-­‐      步骤三、建立spring-servlet.xml文件,它的命名规则:servlet-name-servlet.xml。它的主要代码如下:1.?xml  version=1.0  encoding=UTF-­‐8?  2.  3.beans  xmlns=  4.                xmlns:xsi=­‐instance  xmlns:p=  5.                xmlns:mvc=  xmlns:context=  6.                xmlns:util=  7.                xsi:schemaLocation=  ­‐beans-­‐3.0.xsd      8.                          ­‐context-­‐3.0.xsd      9.                          ­‐mvc-­‐3.0.xsd      10.                          ­‐util-­‐3.0.xsd  11.  12.                bean  id=simpleUrlHandlerMapping  13.                                class=org.springframework.web.servlet.handler.SimpleUrlHandlerMapping  14.                                property  name=mappings  15.                                                props      16.                                                                prop  key=/hello.dohelloControl/prop!-­‐-­‐  说明:hello.do的请求将给名为helloControl的bean进行处理。  -­‐-­‐  17.                                                /props  18.                                /property  19.                /bean  20.                bean  id=helloControl  class=controller.HelloWord/bean  21./beans  22.  复制代码步骤四、完成HelloWord.java的编写,代码如下:1.package  controller;  2.  3.import  javax.servlet.http.HttpServletRequest;  4.import  javax.servlet.http.HttpServletResponse;  5.  6.import  org.springframework.web.servlet.ModelAndView;  7.import  org.springframework.web.servlet.mvc.Controller;  8.  9.public  class  HelloWord  implements  Controller  {  10.                public  ModelAndView  handleRequest(HttpServletRequest  request,  HttpServletResponse  response)  11.                throws  Exception  {  12.                ModelAndView  mav  =  new  ModelAndView(hello.jsp);  13.                mav.addObject(message,  Hello  World!);  14.                return  mav;  15.                }  16.                }  17./*      18.*  说明:ModelAndView对象是包含视图和业务数据的混合对象,即是说通过此

1 / 44
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功