springmvc的工作原理是怎样的?原理介绍

KLQ 2020-04-21 14:06:23 java常见问答 5164

大家对于springmvc都不会陌生,那么具体的来说,springmvc的工作原理又是怎样的呢?一起来了解一下springmvc的具体原理吧!

SpringMVC工作流程简述:

一、客户端向web服务器(如tomcat)发送一个http请求,web服务器对http请求进行解析,解析之后的URL地址假如匹配了DispatcherServlet的映射路径(通过web.xml中的servlet-mapping配置),web容器就将请求交给DispatcherServlet处理。

二、DispatcherServlet接收到这个请求之后,再对URL进行解析,得到请求资源标识符(URI)。

之后调用相应方法得到的HandlerMapping对象,再依据URI,调用这个对象的相应方法获得Handler对象以及它对应的拦截器。(在这里只是获得了Handler对象,并不会操作它,在SpringMVC中,是通过HandlerAdapter对Handler进行调用、控制的)

三、DispatcherServlet依据得到的Handler对象,选择一个合适的HandlerAdapter,创建其实例对象,执行拦截器中的preHandler()方法。

四、在拦截器方法当中,提取请求中的数据模型,填充Handler入参,所有的准备工作都已经做好了,开始执行Handler(我们所写的controller代码不是可以被直接执行的,一定要有刚才的那些操作,才可以转变成Handler被执行)。

五、Handler执行完毕之后,返回一个ModelAndView对象给DispatcherServlet。

六、这个ModleAndView只是一个逻辑视图,并不是真正的视图,DispatcherServlet通过ViewResolver视图解析器将逻辑视图转化为真正的视图。

七、DispatcherServlet通过Model将ModelAndView中得到的处数据解析后用于渲染视图。

最后,将得到的最终视图通过http响应返回客户端。

springmvc的工作原理

以上就是关于springmvc的工作原理的介绍了,大家都了解了吗?更多关于springmvc内容,可以继续的来本站了解哦。