SpringMVC的工作原理
SpringMVC是一个基于MVC模型的web框架,它是Spring的框架的一个模块,与Spring可以无需整合进行开发,十分便捷,下面我们来一起看一下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),框架提供。
主要负责视图解析,根据逻辑视图名解析成真正的视图。