一:客户端向服务器发送请求,服务器接收
如果请求匹配前端服务器DispatcherServlet的请求路径(在web.xml种指定),web容器将该请求转交给dispatcherServlet处理
二:DispatcherServlet对请求路径(URL、HTTP方法、请求报头文、请求参数、Cookie等)进行解析,得到请求资源标识符
(比如我们发送一个url如下的请求http://localhost:8080/SpringMVC/hello.action,就会得到hello.action)
然后根据url调用处理器映射器(HandlerMapping)获得该handler的所有对象(包含handler处理器对象和多个拦截器)
最后以HandlerExecutionChain(拦截器)对象的形式返回
三:dispatcherSerlet获得上面返回的handler对象,把handler封装成适配器,以适配器接口真的调用处理器的功能方法(先执行拦截器的preHandler方法)
返回ModleAndView(包含视图逻辑名和模型数据信息)
四:dispatcherServlet借助ViewResolver完成逻辑视图名到真是对象的解析
五:dispatcher得到视图对象View,使用它对模型数据进行渲染
六:客户端得到响应(可能是HTML页面、XML、JSON串、PDF……)
原文地址:https://www.cnblogs.com/hplsharenote/p/9820970.html
时间: 2024-10-17 10:16:11