springmvc的工作流程
MVC:是一种架构模式,将业务逻辑和页面展示分离,使程序分层、分工合作,既相互独立,又协同合作。
MVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范。
Spring MVC 是一个基于 Java 的轻量级 web 框架,用于构建 Web 应用程序。其工作流程通常包括以下几个步骤:
1客户端发送请求:当客户端(例如浏览器)发起一个 HTTP 请求时,它会通过 URL 地址和请求方法(GET、POST 等)来向服务器发送请求。
2DispatcherServlet 接收请求:在 Spring MVC 中,所有的请求都会先经过一个称为 DispatcherServlet 的中央控制器。DispatcherServlet 是一个 Servlet,它继承自 javax.servlet.HttpServlet。当请求到达服务器后,Servlet 容器会将请求交给 DispatcherServlet 进行处理。
3HandlerMapping 寻找处理器:DispatcherServlet 会调用 HandlerMapping 来确定请求对应的处理器(Handler)。HandlerMapping 是负责根据请求的 URL 或其他标识信息,将请求映射到具体的处理器上。
4Controller 处理请求:一旦确定了请求对应的处理器,DispatcherServlet 就会将请求转发给它。处理器通常是一个带有注解的类,被称为 Controller。Controller 会根据请求的信息进行相应的处理,并返回一个 ModelAndView 对象。
5Model 数据处理:ModelAndView 是一个包含模型数据和视图名称的对象。在这一步,Controller 可以从数据库、文件系统或其他数据源中获取所需的数据,并将其存储在 ModelAndView 中的 Model 部分。
6View 视图解析:DispatcherServlet 将 ModelAndView 对象传递给视图解析器(View Resolver)。视图解析器会根据视图名称解析出具体的视图对象,例如 JSP 页面、HTML 文件等。
7渲染视图:视图对象会负责呈现模型数据,生成最终的响应内容。它会将数据填充到模板中,并生成 HTML 内容返回给客户端。
8返回响应:DispatcherServlet 将最终生成的响应内容发送给客户端,完成请求-响应周期。