Spring MVC架构原理:
1.发起请求到前端控制器:DispatcherServlet
DispatcherServlet 减少了其他控件的耦合性
2前端控制器请求HandlerMapper查找Handler
可以根据xml配置,注释进行查找
3.处理映射器HandlerMapper向前端返回Handler
4.前端控制器调用处理器适配器执行Handler
5.处理器适配器执行Handler
6.Handler执行完后给适配器返回ModelAndView
7.处理器适配器向前端控制器返回ModelAndView
ModelAndView是Spring MVC的一个底层对象包括Model 和 View
8.前端控制器请求视图解析器去进行视图解析(根据逻辑视图名解析成真正的视图:jsp)
9.视图解析器向前端控制器返回视图view
10.前端控制器进行视图渲染
视图渲染将模型数据(ModelAndView)对象填充到request域
11.前端控制器向用户响应结果
组件:
1.前端控制器:DispatcherServlet
作用:接受请求,响应结果,相当于一个转发器
不需要程序员开发
2.处理器映射器:HandlerMapper
作用:根据请求的url来查找Handler
不需要程序员开发
3.处理器适配器:HandlerAdapter
作用:按照特定规则(HandlerAdapter要求的)执行Handler不需要程序员开发
4.处理器Handler:
注意:编写Handler按照HandlerAdapter要求去做,这样HandlerAdapter才可以正确执行Handler
需要程序员开发
4.视图解析器:View resolver
作用:进行视图解析:根据逻辑视图解析成真正的视图(view)
5.视图:View
View是一个接口:实现类支持不同点视图类型(view,freemaker,pdf)
需要程序员开发jsp