SpringMVC理解

SpringMVC的理解

MVC = Model(数据模型) + View(视图) + Controller(控制器)

SpringMVC的作用是解决了V-C与C-V之间的交互问题。

传统的Controller的具体表现就是Servlet,每个Servlet是由1个继承自HttpServlet的Java类,和在web.xml中的配置组成!每个Servlet的配置信息大致是:

<servlet>
	<servlet-name>Demo01Servlet</servlet-name>
	<servlet-class>cn.tedu.web.Demo01Servlet</servlet-class>
</servlet>
<servlet-mapping>
	<servlet-name>Demo01Servlet</servlet-name>
	<url-pattern>/Demo01Servlet</url-pattern>
</servlet-mapping>

在使用Servlet时,通常,每个Servlet处理1种请求,例如登录有登录的Servlet,注册也有注册的Servlet,如果一个项目中有100种请求,就需要创建100个Servlet类,并至少使用800行代码进行配置!如果某个项目有1000种甚至5000种请求,则需要创建1000个或5000个Servlet类,并至少使用8000行甚至40000行代码进行配置,在实际运行时,还需要创建1000个或5000对象!对内存的开销也是非常大的!

SpringMVC中的控制器与请求的对应关系是1对多的!在同一个控制器类中可以添加若干个处理请求的方法!无论是从配置的代码量、Java类文件的数量、运行时控制器对象的数量都大大的减少了!使得整个项目运行时开销更小,更加易于管理和维护!

当然,在实际开发时,SpringMVC也表现得比原生技术的使用方式更加简单!

3. SpringMVC框架的核心处理流程

在SpringMVC框架的核心处理流程中,会涉及到的5个组件:

  • DispatcherServlet:前端控件器,用于接收所有请求,并组织整个执行流程;

  • HandlerMapping:用于配置请求路径与处理请求的控制器的映射关系;

  • Controller:实际处理请求的组件;

  • ModelAndView:控制器的处理结果,包括Model(数据)及View(视图);

  • ViewResolver:视图解析器。

SpirngMVC运行流程:

  1. 客户端请求提交到前端控制器DispatcherServlet
  2. 由DispatcherServlet控制器查询一个或多个HandlerMapping(映射处理器),找到处理请求的Controller
  3. DispatcherServlet将请求提交到Controller(处理器)
  4. Controller调用业务逻辑处理后返回ModerAndView
  5. DispatcherServlet查询一个和多个ViewResoler视图解析器找到ModelAndView指定的视图
  6. 视图负责将结果显示到客户端

SpringMVC执行流程图

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值