Spring MVC快速入门(Spring3.0.5-20150113)

一、Spring3 MVC的优点:

1、Spring3 MVC使用简单,学习成本低。学习难度小于Struts2,Struts2用不上的多余功能太多。呵呵,当然这不是决定因素。

2、Spring3 MVC很容易就可以写出性能优秀的程序,Struts2要处处小心才可以写出性能优秀的程序(指MVC部分)

3、Spring3 MVC的灵活是你无法想像的,Spring框架的扩展性有口皆碑,Spring3 MVC当然也不会落后,不会因使用了MVC框架而感到有任何的限制。

二、几个重要的接口和类:

1、DispatcherServlet -- 前置控制器(C)

2、HandlerMapping接口 -- 处理请求的映射(I) HandlerMapping接口的实现类:

1、SimpleUrlHandlerMapping通过配置文件,把一个URL映射到Controller(C)

2、DefaultAnnotationHandlerMapping通过注解,把一个URL映射到Controller类上(C) 3、HandlerAdapter接口 -- 处理请求的映射(I)

4、AnnotationMethodHandlerAdapter(C)通过注解,把一个URL映射到Controller类的方法上 5、Controller接口 -- 控制器(I)

由于我们使用了@Controller注解,添加了@Controller注解注解的类就可以担任控制器(Action)的职责,所以我们并没有用到这个接口。 6、HandlerInterceptor接口--拦截器(I)

我们需要自己实现这个接口,来完成拦截的工作。 7、ViewResolver接口的实现类:

1、UrlBasedViewResolver类通过配置文件,把一个视图名交给到一个View来处理(C) 2、InternalResourceViewResolver类,比上面的类,加入了JSTL的支持(C) 8、View接口

1、JstlView类:View接口的实现类 9、LocalResolver接口

10、HandlerExceptionResolver接口 --异常处理 1、SimpleMappingExceptionResolver实现类 11、ModelAndView类

三、核心流程图:

四、DispatcherServlet说明:

1)

使用Spring MVC,配置DispatcherServlet是第一步。

DispatcherServlet是一个Servlet,所以可以配置多个DispatcherServlet。

DispatcherServlet是前置控制器,配置在web.xml文件中的。拦截匹配的请求,Servlet拦截匹配规则要自已定义,把拦截下来的请求,依据某某规则分发到目标Controller(我们写的Action)来处理。 “某某规则”:是根据你使用了哪个HandlerMapping接口的实现类的不同而不同。 如: 例子一:

example

org.springframework.web.servlet.DispatcherServlet

1

example *.form

注释:

1是启动顺序,让这个Servlet随Servletp容器一起启动。 *.form会拦截*.form结尾的请求(拦截什么样的请求)。

example可以有多个DispatcherServlet,是通过名字来区分的。 每一个DispatcherServlet有自己的WebApplicationContext上下文对象(下有介绍)。 在DispatcherServlet的初始化过程中,框架会在web应用的 WEB-INF文件夹下寻找名为[servlet-name]-servlet.xml 的配置文件,生成文件中定义的bean。???

例子二(常用):

springServlet

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation /WEB-INF/spring-mvc.xml

1

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4