SpringMVC简介
1.1 SpringMVC简介
MVC = Model (数据模型) + View (视图) + Controller (控制器)
MVC是一种常见用户界面设计模式(设计套路), 其实现方案很多Struts2, JFinal, SpringMVC, 等等。
SpringMVC框架主要解决了VC之间的交互问题!在SpringMVC框架中,并不关心M的问题!
在传统的Java EE开发模式下,是使用Servlet组件作为项目的控制器,假设项目中有"用户注册”的功能,则可能需要创建、UserRegServlet",如果还有”用户登录"功能,则可能需要创建UserL oginServlet",以此类推,每增加1个新的功能,就需要开发-个新的Servlet,如果某个项目中有100个功能,就需要开发100个Servlet,如果有500个功能,就需要开发500个Servlet!而且,每个Servlet可 能还需要添加相关的配置,所以,一旦Servlet的数量过多,就会不利于管理和维护,并且,在服务器运行时,需要创建很多Servlet类的对象,会消耗较多的内存空间。
另外,Java EE的许多API并不简洁,在使用时并不是那么方便!
使用SpringMVC框架,以上问题都可以被解决!
1.2 SpringMVC核心组件和执行流程
使用Spring MVC必须了解其5大核心组件和其执行流程,这也是面试Spring MVC必问-个经典题目:
●DispatcherSerylet:前端控制器,用于接收所有请求;
●HandlerMapping: 用于配置请求路径与Controller组件的对应关系;
●Contoller: 控制器,具体处理请求的组件;
●ModelAndView: Controller组件 处理完请求后得到的结果,由数据与视图名称组成;
●ViewResolver: 视图解析器,可根据视图名称确定需要使用的视图组件。
SpringMVC核心执行流程图