SpringMVC可以说是Servlet的封装,屏蔽了Servlet的很多细节,比如Servlet再获取参数的时候需要不停地getParameter,现在只要在SpringMVC方法定义对应的JavaBean,只要属性和参数名一致,SpringMVC就可以帮我们实现将参数封装到JavaBean上了。
Spring总体的执行流程是;
(1)浏览器发送请求到前端控制器中,
(2)HandkerMapping识别当前请求路径,找到对应的handler返回handerChain,其中包含handler和拦截器
(3)HandlerAdapter执行handerChain,依次执行拦截器和handler,并完成请求参数封装,和响应中的json格式互换,最终返回ModelAndView
(4)ViewResolver根据ModelAndView解析出一个对象
(5)View完成请求的转发和重定向
(6)JSP,视图层,渲染数据html中,并将渲染完毕的html内容,输出给浏览器,完成响应
PS: 前端控制器(入口):SpringMVC的一切行为都有它调度、HandlerMapping(映射器)