最近在家闲着没事就开始写写博客嘿嘿,反正也没有几个人看啦.
梳理一下SpringMVC的流程⑧
图片是慕课网-格鲁老师的流程图
客户端发起用户请求,以http形式进入servlet容器中.
servlet容器解析http数据成为一个endpoint对象,包含(url,httpheader,解析完或者读完的body数据流).
然后进入用户自定义的filter中,利用filter对request进行处理,处理完毕进入dispatcherServlet中(springmvc入口)
然后进入常用的解析器(LocaleResolver,MultipartResolver解析上传文件,解析成字节流)
根据请求的url寻找handler也就是controller(@RequestMapping注解)
在启动过程中就会通过requestmapping将url与controller对应的方法注入到handlerMapping中
然后进入HandlerInteceptor(拦截器),对数据进行绑定和验证
创建model和view,通过viewResolver资源定位,然后渲染页面,数据来自request,modelmap,session
然后通过dispatcherServlet返回,filter后续处理最终通过servert容器形成http响应返回给客户端