springboot mvc运行流程
springboot mvc运行流程
***********************
mvc 运行流程
用户请求到达前端控制器(dispatcherServlet);
解析请求url,根据处理器映射器(handlerMapping)查找处理器(handler)及与之相关的拦截器(interceptor),组成handlerExecutionChain返回
找到对应的handlerAdapter,执行拦截器preHandle方法;
提取请求参数,对参数进行转换、格式化、验证后传入控制器,控制器执行完成后返回ModelAndView;
调用拦截器postHandle方法,将ModelAndView返回给到前端控制器(DispatcherServlet);
如果是逻辑视图则进行渲染,非逻辑试图不渲染,调用拦截器afterCompletion方法,将请求响应返回给客户端
***********************
消息转换流程
处理器(handler)一般不会直接使用客户端的请求参数,需要经过
消息转换(httpMessageConverter、converter、GenericConverter)、
格式化(formatter)、验证(validator)后,转变为控制器所需要的参数形式后才能使用
httpMessageConverter:请求参数转换为字符串、pojo,响应结果转换为json等
converter:将字符串转换为pojo
genericConverter:将字符串转换为List<pojo>、pojo[]
formatter:数字、日期格式化
validator:对数据进行检验
本文地址:https://blog.csdn.net/weixin_43931625/article/details/107244953
推荐阅读