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:对数据进行检验

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值