Spring MVC的完整执行流程和常用组件详解

网友投稿 286 2022-09-29

Spring MVC的完整执行流程和常用组件详解

目录1.Spring MVC执行流程2.Spring MVC常用组件2.1 DispatcherServlet2.2 HandlerMapping2.3 HandlAdapter2.4 Handler2.5 ViewResolver总结

1.Spring MVC执行流程

Spring MVC的完整执行流程如下:

客户端发送请求给DispatcherServlet前端控制器DispatcherServlet根据请求调用HandlerMapping处理器映射器HandlerMapping解析请求对应的Handler,返回一个执行链DispatcherServlet将执行链返回的Handler信息发给HandlerAdapter处理器适配器HandlerAdapter会调用对应的Handler处理器(即Controller)Handler执行完成后,会返回一个ModelAndView对象给HandlerAdapterHandlerAdapter将接收到的ModelAndView对象返回给DispatcherServletDispatcherServlet根据ModelAndView对象选择合适的ViewResolver视图解析器ViewResolver根据逻辑View返回实际的view给DispatcherServletDispatcherServlet对View进行渲染将视图渲染结果返回给浏览器(客户端)

2.Spring MVC常用组件

2.1 DispatcherServlet

前端控制器。⽤户请求到达前端控制器,它就相当于MVC模式中的C,DispatcherServlet是整个流程控制的中⼼,由它调⽤其它组件处理⽤户的请求,DispatcherServlet的存在降低了组件之间的耦合性,系统扩展性提⾼。

DispatcherServlet

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation

classpath:springmvc-config.xml

1

DispatcherServlet

/

2.2 HandlerMapping

HandlerMapping,处理器映射器。根据⽤户的请求地址来找到对应的Handler即控制器,spring mvc提供了不同的映射器实现不同的映射⽅式,分别有:

xml配置⽅式实现接⼝⽅式注解⽅式

2.3 HandlAdapter

HandlAdapter,处理器适配器。按照特定的规则去执行Handler,通过HandlerAdapter执行处理器。

2.4 Handler

Handler,处理器。Handler 是DispatcherServlet前端控制器的后端控制器,在DispatcherServlet的控制下Handler对具体的⽤户请求进⾏处理。由于Handler涉及到具体的⽤户业务请求,所以⼀般情况需要程序员根据业务需求开发Handler。也就是我们常说的控制器类和方法。

//标识此类为控制器类

@Controller

public class jspController {

@RequestMapping("/index")

public String firstController(){

//返回视图名称

return "success";

}

}

2.5 ViewResolver

ViewResolver,视图解析器。ViewResolver负责将处理结果⽣成View视图,ViewResolver⾸先根据逻辑视图名解析成物理视图名即具体的页⾯地址,再⽣成View视图对象,最后对View进⾏渲染将处理结果通过页⾯展⽰给⽤户。

class="org.springframework.web.servlet.view.InternalResourceViewResolver">

class="org.springframework.web.servlet.view.InternalResourceViewResolver">

总结

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:AWS WAF – Web 应用程序防火墙简单使用
下一篇:智慧巨鹿使用Rainbond落地实践,一个平台管理所有应用系统
相关文章

 发表评论

暂时没有评论,来抢沙发吧~