MVC是 模型 (Model )、视图 (View )、控制器 (Controller )的简写,是一种软件设计规范。主要作用是降低视图与业务逻辑之间的双向耦合,它不是一种设计模式,而是一种架构模式。 Model(模型) :数据处理模型,提供了要展示的数据,包括了数据和业务行为;View(视图) :负责展示模型,一般就是我们所见到的用户界面,客户想看到的东西;Controller(控制器) :接收用户请求,委托给模型进行处理,将处理后的模型数据返回给视图,视图负责进行渲染展示;
 
SpringMVC是Spring框架的一部分,是基于Java实现MVC设计模式的轻量级Web框架。 轻量级、可适配、非侵入式、简单易学; 高效,是基于请求响应的MVC框架(降低视图层与业务层之间的耦合性、提高可重用性和维护性); 与Spring框架有很好的兼容性; 功能强大、简洁灵活; 前端控制器/调度器 (DispatcherServlet):负责将用户发送的请求拦截下来,分发到各个控制器方法中;处理器映射器 (HandlerMapping):根据请求的URL 与 @RequestMaping映射进行匹配,匹配成功后会返回具体的Handler(封装了具体的控制器方法);处理器适配器 (HandlerAdapator):负责调用Handler中的具体方法、返回视图名地址,将其封装到ModelAndView中(封装视图名和request域的数据);视图解析器 (ViewReslover):根据ModelAndView中的视图名地址,去找到具体的jsp,然后封装到View对象中;视图 (View):进行视图渲染(将jsp转换成html的内容),最终响应到客户端;
 
 
 < dependency> < groupId> </ groupId> < artifactId> </ artifactId> < version> </ version> </ dependency> <?xml version="1.0" encoding="UTF-8"?> 
< web-appxmlns = " http://xmlns.jcp.org/xml/ns/javaee" xmlns: xsi= " http://www.w3.org/2001/XMLSchema-instance" xsi: schemaLocation= " http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version = " 4.0" > < servlet> < servlet-name> </ servlet-name> < servlet-class> </ servlet-class> < init-param> < param-name> </ param-name> < param-value> </ param-value> </ init-param> < load-on-startup> </ load-on-startup> </ servlet> < servlet-mapping> < servlet-name> </ servlet-name> < url-pattern> </ url-pattern> </ servlet-mapping> < filter> < filter-name> </ filter-name> < filter-class> </ filter-class> < init-param> < param-name> </ param-name> < param-value> </ param-value> </ init-param> < init-param> < param-name> </ param-name> < param-value> </ param-value> </ init-param> </ filter> < filter-mapping> < filter-name> </ filter-name> < url-pattern> </ url-pattern> < servlet-name> </ servlet-name> </ filter-mapping> </ web-app> <?xml version="1.0" encoding="UTF-8"?> 
< beansxmlns = " http://www.springframework.org/schema/beans" xmlns: xsi= " http://www.w3.org/2001/XMLSchema-instance" xmlns: context= " http://www.springframework.org/schema/context" xmlns: mvc= " http://www.springframework.org/schema/mvc" xsi: schemaLocation= " http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd" > < context: component-scanbase-package = " org.example" > </ context: component-scan> </ beans> @Controller 
public  class  HelloController  { @RequestMapping ( "/Hello" ) public  String  helloWorld ( String  name) { System . out. println ( "hello springmvc:" +  name) ; return  "index.jsp" ; } 
} 
项目结构 请求地址: