Srping Mvc service(HttpServletRequest, HttpServletResponse)
2018-03-26 21:53
489 查看
Srping Mvc service(HttpServletRequest, HttpServletResponse)
doService
如果是 include jsp 先存储 request 的 attribute 为一个快照,即临时变量把 wac、国际化解析器、样式解析器、样式 存储到 request 的attribute 中
把 flashMap flashMapManager 存储到 request 的attribute 中
调用 doDispatch
finally 如果 request 是 nio 异步响应,则 return,否则回填快照,即开始的临时变量
doDispatch
从 HttpServletRquest 中获取 WebAsyncManager如果是文件上传则把 request 转换成 multipart request 并标记 multipart 解析器为可用
根据 request 从当前 servlet 里的 handMappings 里获取 handlerExecutionChain
如果没有找到 handlerExecutionChain 则根据配置选择是发送异常还是返回 404
根据返回的 handlerExecutionChain 从当前 servlet 的 handlerAdapters 中获取 handlerAdapter
如果是 GET 和 HEAD 请求根据 lastModified 进行判断进行判断是否缓存过期,没有过期直接返回 304 告知从浏览器缓存中找资源
使用 HandlerExecutionChain 执行预先的拦截器 handle,如果没通过直接返回
使用 handlerAdapter 执行给定的 HandlerExecutionChain 中的 handler 对象并返回 ModelAndView
如果 WebAsyncManager 是异步的直接返回
从当前 servlet 的 viewNameTranslator 根据 request 设置视图信息到 ModelAndView
HandlerExecutionChain 执行逆序执行拦截器 handler
相关文章推荐
- The code of method _jspService(HttpServletRequest, HttpServletResponse) is exceeding the 65535 bytes limit
- The code of method _jspService(HttpServletRequest, HttpServletResponse) is exceeding the 65535 bytes
- Fix The code of method _jspService(HttpServletRequest, HttpServletResponse) is exceeding the 65535 b
- Tomcat 解决The code of method _jspService(HttpServletRequest, HttpServletResponse) is exceeding the 65535 bytes limit
- The code of method _jspService(HttpServletRequest, HttpServletResponse) is exceeding the 65535 bytes
- The code of method _jspService(HttpServletRequest, HttpServletResponse) is exceeding the 65535 bytes limit
- “The code of method _jspService(HttpServletRequest, HttpServletResponse) is exceeding the 65535 byte
- “The code of method _jspService(HttpServletRequest, HttpServletResponse) is exceeding the 65535 bytes limit” 的我之解決辦法
- The code of method _jspService(HttpServletRequest, HttpServletResponse) is exceeding the 65535 bytes
- Maven项目下HttpServletRequest 或 HttpServletResponse需引用的依赖包
- Struts2:在Action类中获得HttpServletResponse,HttpServletRequest对象的四种方法
- 南哥带你学 Java 之 JavaEE 设置全局配置、请求转发、请求重定向、HttpServletResponse 和 HttpServletRequest
- HttpServletRequest和HttpServletResponse详解
- servlet获取HttpServletRequest、HttpServletResponse
- Struts 获取HttpServletRequest和HttpServletResponse的两种方式
- ServletRequest,HttpServletRequest ServletResponse,HttpServletResponse的区别:
- HttpServletRequest和HttpServletResponse详解
- servlet中的HttpServletRequest,HttpServletResponse对象以及service 和 doXX方法区别
- SpringMVC参数传递 HttpServletRequest,HttpServletResponse和HttpSession
- Struts2之HttpServletRequest、HttpServletResponse,HttpSession,Parameters处理