程序的主要几个比较重要且复杂用法之五SpringMVC请求处理顺序

SpringMVC请求处理里面有个重要的东东就是DispatcherServlet为处理管道的请求协调整个生命周期。

以下大概说下请求顺序:

1.Tomcat在启动的时候会调用Web.xml里面的所有DispatcherServlet(如以下的exam),并知道了相应的请求路径

<servlet>
<servlet-name>exam</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>


<servlet-mapping>
<servlet-name>exam</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>

2.DispatcherServlet会对自己需要那些的controller、Bean(过虑、标签、相对应的视图等)进行自动依赖注入如下

<!-- 对包中的所有类进行扫描,以完成Bean创建和自动依赖注入的功能 需要更改 -->


<context:component-scan base-package="web.controller" />
<mvc:interceptors>
<bean class="SpringMVC.Interceptor.MyInterceptor"></bean>
</mvc:interceptors>

<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />

<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />

<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/WEB-INF/jsp/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>

3.IE请求通过DispatcherServlet上的配置找到对应的Controller实现业务逻辑,Controller返回ModelAndView给相对应在Controller方法上的URL映射后,回给DispatcherServlet再给前端IE。

以下这图是摘录一本spring mvc书上的图

posted @ 2016-09-11 14:18  老王学JAVA  阅读(496)  评论(0)    收藏  举报