首页 > 编程知识 正文

springmvc流程详解,springMVC的流程

时间:2023-05-05 14:20:54 阅读:126916 作者:3083

什么是SpringMVC?

SpringMVC是实现了MVC设计模式的轻量级web层框架,使用方便。SpringMVC的优势是什么?

1、职责划分清晰:

前端控制器((dispatcher servlet ) ) ) ) ) ) ) ) ) )。

请求到处理器的映射(HandlerMapping )

处理器适配器(HandlerAdapter ) )。

“视图解析器”。

或页面控制器

验证器

命令对象(绑定有命令请求参数的对象称为命令对象)

表单对象(Form Object为查看和提交表单提供的对象称为表单对象。

2、分工明确,且扩张点相当灵活,容易扩张。 虽然几乎不需要。

3、因为指令对象是POJO,所以不需要继承框架特定的API,可以直接将指令对象用作业务对象。

4、与Spring其他框架无缝集成是其他Web框架所没有的。

5、可适应,通过HandlerAdapter支持任何类作为处理器。

6、定制性、处理程序映射、视图资源器等非常容易定制。

7、强大的数据验证、格式和绑定机制。

8、利用Spring提供的Mock对象,可以非常简单地进行Web层单元测试。

9、支持本地化、主题分析,便于国际化和主题切换。

10、强大的JSP标记库,便于创建JSP。

例如,rest风格支持、简单文件上传、约定大于配置的契约型编程支持,以及基于注释的零配置支持。

与Struts2的对比:

共同点:都是基于MVC设计模式的表示层框架,底层实现离不开原始servlet,处理请求的机制都是核心控制器

不同: Spring MVC的入口是servlet,Struts2是过滤器

虽然Spring MVC是基于方法设计的,但Struts2是基于类的,每次运行Struts2时都会创建一个操作类。 所以Spring MVC会比Struts2快一点。

相比之下,SpringMVC完全超过了Struts2。

执行流程:

dispatcher servlet :是整个springmvc框架的核心。

前控制器/核心控制器:的所有请求和响应都由该控制器指定。

前端控制器的所有工作都是基于组件的。

三个主要组件:

HandlerMapping:根据客户端请求查找相应的hadler,找到后将其返回给dispatcher servlet;

HandlerAdapter:执行找到的Handler方法。 方法执行后,返回值传递给HandlerAdapter,HandlerAdapter将返回值传递给DispatcherServlet。

ViewResolver:根据dispatcher servlet指定的结果搜索相应的页面,并将搜索结果返回给dispatcher servlet。

dispatcher servlet负责最终响应,默认情况下是传输操作。

执行流程图:

画中有几个灵魂,大致流程是这样的。 请参考理解。

谢谢你玩得开心!

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。