什么是Spring MVC ?简单介绍下你对springMVC的理解?

目录

        概念

        框架架构

        SpringMVC的流程? (结合上图进行理解)

        SpringMVC的优点

概念

        Spring MVC,它是Spring Framework的一个模块,是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,Controller分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。

        在Spring MVC中,模型(M)表示应用程序的业务逻辑或数据,通常由JavaBeans实现。视图(V)是独立于模型的表示层,在Web应用程序中通常是HTML或JSP页面。控制器(C)协调处理用户请求和模型或视图之间的关系。


框架架构

        Spring MVC的关键组件包括DispatcherServletHandlerMappingControllerViewResolver等。

        DispatcherServlet是整个框架的核心,它拦截进入应程序的所有请求,然后将请求传递给对应的控制器进行处理。

        HandlerMapping用于将请求映射到相应的Controller.

        Controller负责处理用户请求,并返回相应的数据或视图。

        ViewResolver负责将Controller返回的逻辑视图名称解析成具体的视图实例,然后渲染并返回给用户。

什么是Spring MVC ?简单介绍下你对springMVC的理解?_第1张图片

SpringMVC的流程? (结合上图进行理解)

 (1)用户发送请求至前端控制器DispatcherServlet; (2) DispatcherServlet收到请求后,调用HandlerMapping处理器映射器,请求获取Handle; (3)处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet; (4)DispatcherServlet 调用 HandlerAdapter处理器适配器; (5)HandlerAdapter 经过适配调用 具体处理器(Handler,也叫后端控制器); (6)Handler执行完成返回ModelAndView; (7)HandlerAdapter将Handler执行结果ModelAndView返回给DispatcherServlet; (8)DispatcherServlet将ModelAndView传给ViewResolver视图解析器进行解析; (9)ViewResolver解析后返回具体View; (10)DispatcherServlet对View进行渲染视图(即将模型数据填充至视图中) (11)DispatcherServlet响应用户。


SpringMVC的优点

  1. 灵活和可扩展性:Spring MVC框架提供了许多可扩展的插件和接口,从而使程序员能够自定义框架运行时的行为,例如可插拔的视图技术、远程调用支持、异常处理、拦截器、数据验证、文件上传、异步处理等等。因此,程序员可以根据自己的需求选择合适的插件和接口,并将它们整合在一起,从而实现自己的业务逻辑。

  2. 易于测试:Spring MVC框架中的MVC分层结构,使得程序员可以对每一层代码进行单独的测试,从而使得测试更加容易、可靠,确保了代码的质量。

  3. 独立于Servlet API:Spring MVC为基于Servlet API的Web框架提供了一种替代方案,封装了Servlet API的细节,使得程序员可以使用JavaBean或POJO来代替Servlet和Filter。

  4. 高效:Spring MVC使用的是基于HTTP请求的轻量级Web框架,相比之下,运行效率比传统的Web框架更高。

  5. 易于与其他Spring模块集成:Spring MVC框架可与许多其他Spring模块集成,例如Spring Security、Spring Data、Spring Webflow等等,使得开发人员能够使用这些模块为复杂的Web应用程序组装更加复杂的功能。

你可能感兴趣的:(开发框架,spring,mvc,java)