初识SpringMVC

初识SpringMVC

spring web mvc 和Struts2都属于表现层的框架,spring mvc是spring整体框架的一部分。

如图可以看出:

初识SpringMVC

MVC是一种设计模式,mvc在B/S系统下的应用:

初识SpringMVC

springmvc基本流程:

初识SpringMVC


初识SpringMVC

第一步:发起请求到前端控制器(DispatcherServlet)

第二步:前端请求器请求HandlerMapping查找Handler

可以根据xml配置、注解进行查找

第三步:处理器映射器HandlerMapping向前端控制器返回Handler

第四步:前端控制器调用处理器适配器去执行Handler

第五步:处理器适配器去执行Handler

第六步:Handler处理完成给处理器适配器返回ModelAndView

第七步:处理器适配器向前端控制器返回ModelAndView

ModelAndView是springmvc框架的一个底层对象,包括 Model和View

第八步:前端控制器请求视图解析器去进行视图解析

根据逻辑视图名解析成真正的视图(jsp、pdf .....)

第九步:视图解析器向前端控制返回view

第十步:前端控制器进行试图渲染

试图渲染将模型数据(在ModelAndView中)填充到request域

第十一步:前端控制器向用户返回响应数据

 

组件:

1、前端控制器(DispatcherServlet),不需要程序员开发

作用:接受请求、响应结果,相当于转发器

减少了其他组件的耦合度

2、处理器映射器(HandlerMapping),不需要程序员开发

作用:根据请求的URL查询Handler

3、处理器适配器(Handler)

作用:按照特定的规则(HandlerAdapter要求的规则)执行Handler

处理器Handler需要程序员开发

注意:编写Handler时按照HandlerAdapter的要求去开发,这样适配器才可以去正确执行Handler

4、视图解析器(View resolver),不需要程序员开发

作用:进行视图解析,根据逻辑视图名解析成真正的视图(view)

5、视图View(需要程序员开发jsp)

View是一个接口,实现类支持不同的View类型(jsp、freemarker、pdf。。。。)