黑马程序员技术交流社区

标题: Spring MVC详解及运行原理 [打印本页]

作者: 小江哥    时间: 2018-11-7 12:38
标题: Spring MVC详解及运行原理
pring MVC介绍:
        Spring Framework的目标是通过启用基于POJO的编程模型来使J2EE开发更易于使用,并促进良好的编码实践。
        Spring是企业最流行的应用程序开发框架,也是轻量级开源框架,借助于注解,几乎全都是使用POJO的开发模式,易于测试和可重用的代码。控制器是不会直接接收请求的,而是将其委托给Bean,通过DI(依赖注入)将其注入到控制器中,从而实现程序中的请求处理

    开源:最初是由Rod Johnson编写,在2003年6月在Apache 2.0许可下发布,当前最新版本为5.10。从Spring Framework 5.0开始,Spring需要JDK 8+(Java SE 8+),并且已经为JDK 9提供了开箱即用的支持。

    轻量级框架:框架基本版本大约为2MB,挺小的。Spring框架的核心功能可以用于开发任何Java应用程序,在J2EE上还可以扩展构建Web应用。

优点:
    1.强大的灵活性、非侵入性和可配置性。

    2.可重用业务代码。

    3.清晰的角色划分,控制器(controller)、Servlet分发器(DispatcherServlet)、处理器映射(handler mapping)、试图解析器(view resoler)等等。

    4.提供了一个前端控制器DispatcherServlet,开发者无须额外开发控制器对象


Spring MVC运行流程图:

1. 接收到HTTP请求后,DispatcherServlet会查询HandlerMapping 以调用相应的控制器。

2. 该控制器接受请求,并调用基于所使用GET或POST方法相应的服务的方法。服务方法将根据定义的业务逻辑设置模型数据,并将视图名称返回给DispatcherServlet。

3. 所述的DispatcherServlet将帮助从的ViewResolver到拾取该请求的已定义视图。

4. View完成后,DispatcherServlet将模型数据传递给最终在浏览器中呈现的视图。

Spring MVC核心组件:
    1.DispatcherServlet(中央处理器):将请求转发给控制器

    2.Controller(控制器):处理请求的控制器

    3.HandlerMapping(映射处理器):负责映射中央处理器转发给Controller时的映射策略

    4.ModelAndView:服务器返回数据以及视图层的封装类

    5.ViewResolver(视图解析器):解析具体的视图

原文:https://blog.csdn.net/m0_37574389/article/details/80360681







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2