概述:
MVC:
M model 模型,除控制和视图以外,都可以成为模型。 V view 视图,JSP,HTML,ASP,PHP,XHTML,FREEMARK,JSF,直接与用户做交互的资源。 C control 控制,接收请求,分发请求,调用模型,反馈视图。
SpringMVC框架是围绕DispatcherServlet这个核心展开,DispatcherServlet这个Servlet负责拦截请求,并将其分派给相应的处理类来处理。
体系结构:
SpringMVC:不是独立框架。是Spring框架中的一个子模块。天生于Spring集成性好。
轻量级的,基于请求-应答模型的web框架
请求路径映射灵活多变。
不考虑框架侵入性的web框架。
SpringMVC的整体模块:
分析:
1、 由最先的HTPP发送请求,由所配置的XML中的DispatcherServlet处理。
2、 DispatcherServlet接受到这个请求后,根据请求的信息及HandlerMapping的配置找到处理请求的处理器Handler。
3、 得到HandlerMapping对应的Handler后,通过HandlerAdapter对Handler进行封装,再以统一的适配器接口调用Handler。
4、 处理器完成业务逻辑的处理后返回一个ModelAndView给DispatcherServlet。
5、 ModelAndView包含逻辑视图名,而非真正的视图对象,DispatcherServlet借由ViewResolver完成逻辑视图名到真实视图对象的解析工作。
6、 当得到真实View对象后,DispatcherServlet就对这个View对象进行渲染。
7、 最终返回到客户的HTTP响应。