首页 > 代码库 > DispatcherServlet

DispatcherServlet

 
DispatcherServlet继承自抽象类:FrameworkServlet,间接继承了HttpServlet,采用前端控制器模式,负责任务的分派
 
 
DispatcherServlet是Spring MVC的灵魂和心脏,它负责接收HTTP请求并协调Spring MVC的各个组件完成请求处理的工作。
 
和任何Servlet一样,用户必须在web.xml中配置好DispatcherServlet,并且让其接受一 切HTTP请求。
 
当用户的请求被截获时,DispatcherServlet通过HandlerMapping定位到特定的Controller(使用 @Controller注解的普通Java类,此处已经定位到了具体的业务处理方法了,所以我们称其为Handler)。
 
 
然后通过 HandlerAdapter调用Handler中对应的业务处理方法(从这里可以看出与Struts不同的是,Spring MVC是方法级的拦截)。
 
业务处理方法返回一个逻辑视图名(View)和模型数据(Model,二者统称ModelAndView)交给 DispatcherServlet,DispatcherServlet调用ViewResolver解析出真实的视图对象,得到这个视图对象后,DispatcherServlet就使用Model对其进行渲染,将最后结果返回给用户。
 
 
 
 
 

DispatcherServlet