SpringMVC与原生Servlet模式的区别

SpringMVC

什么是SpringMVC

SpringMVC全名叫Spring Web MVC,是⼀种基于Java的实现MVC设计模型的请求驱动类型的轻量级Web框架,属于SpringFrameWork的后续产品。

SpringMVC目前已经成为主流的MVC框架之一,并且随着Spring不断更新迭代,SpringMVC已经全⾯超越Struts2,成为最优秀的MVC框架。

servlet、struts实现接⼝,而SpringMVC中只要让⼀个Java类能够处理请求只需要添加注解就能完成。SpringMVC主要是通过一套注解,让⼀个简单的Java类成为处理请求的控制器,⽽⽆须实现任何接⼝。同时它还⽀持RESTful编程⻛格的请求

所以SpringMVC和Struts2⼀样,都是为了解决表现层问题的web框架,它们都是基于MVC设计模式的。⽽这些表现层框架的主要职责就是处理前端HTTP请求

SpringMVC的本质

SpringMVC本质是对servlet的封装,简化了我们serlvet的开发

作⽤:

  • 接收请求
  • 返回响应,跳转⻚⾯

SpringMVC 和 原生Servlet区别

SpringMVC源码分析:SpringMVC与原生Servlet模式的区别_后端

由上图可知

原生Servlet需要通过客户端根据后台请求类型创建多个Servlet来进行接收前端传过来的HTTP请求。

SpringMVC只需要通过一个Servlet(DispatcherServlet)前端控制器来接收所有的前端传来的HTTP请求,然后处理接收HTTP请求,下发给对应的处理类。