SpringMVC的工作原理

    SpringMVC是一个基于MVC模型的web框架,它是Spring的框架的一个模块,与Spring可以无需整合进行开发,十分便捷,下面我们来一起看一下SpringMVC的工作原理。

    SpringMVC的运行过程:

  SpringMVC的工作原理

①:用户浏览器向前端控制器(DispatcherServlet)发送请求。

②:前端控制器(DispatcherServlet)通过xml配置文件、注解向处理器映射器(HandlerMapping)寻找handler。

③:处理器映射器(HandlerMapping)向前端控制器(DispatcherServlet)返回handler。

④:由于前端控制器(DispatcherServlet)不能直接执行handler,前端控制器请求处理器适配器(HandlerAdapter)执行handler。

⑤:处理器适配器(HandlerAdapter)执行handler。

⑥:handler执行完成向处理器适配器(HandlerAdapter)返回ModelAndView。

⑦:处理器适配器(HandlerAdapter)向前端控制器(DispatcherServlet)返回ModelAndView。

⑧:前端控制器(DispatcherServlet)请求视图解析器(View Resolver)进行视图解析。

⑨:视图解析器(View Resolver)解析完成向前端控制器(DispatcherServlet)返回View。

⑩:前端控制器(DispatcherServlet)进行视图渲染,将数据填充进request域中。

⑩①:前端控制器(DispatcherServlet)向用户浏览器返回数据。

 

SpringMVC的组件:

①:前端控制器(DispatcherServlet),框架提供。

    主要负责接受请求,响应结果,是整个SpringMVC的核心,负责协调各个组件之间处理用户请求。降低各个组件之间的耦合度。

②:处理器映射器(HandlerMapping),框架提供。

    主要负责通过用户请求url查找对应的handler。可以通过xml配置文件方式、注解方式等进行url映射。

③:处理器适配器(HandlerAdapter),框架提供。

    主要负责执行handler。

④:处理器(handler),需要程序员自己实现。

    主要负责处理用户的请求,需要程序员自己实现,处理业务逻辑。

⑤:视图解析器(View Resolver),框架提供。

    主要负责视图解析,根据逻辑视图名解析成真正的视图。