- SpringBootWeb 是 SpringBoot的一部分, 底层是SpringMVC(框架), 用于构建Web应用程序
- Spring MVC是一个基于Java的Web应用开发框架,提供了一种 模型-视图-控制器( Model-View-Controller )的架构模式. Spring MVC中,C代表的是控制器(Controller).
- 控制器 (xxxController)负责处理( 前端控制器分发下来的 )特定类型的请求,处理器执行业务逻辑,并生成模型 数据 供 视图使用。
- 前端控制器(DispatcherServlet)是整个Web应用程序的入口点,它负责接收所有的HTTP请求,并将请求分发给 相应的控制器来处理。-- (前端控制器也叫 核心控制器)
- Servlet是传统的Java Web开发中(没有框架时候单用的核心技术),充当了控制器, 将请求分发给适当的业务逻辑处理代码,并生成响应返回给客户端。
- SpringMVC的执行流程:
(handler: 处理器, ( Controller类中的方法), 用于处理特定的请求和执行相应的业务逻辑。ect: 户在浏览器中输入了以下URL:http://www.example.com/product/1234
在Spring MVC中,我们可以定义一个ProductController类作为处理器,它可以包含一个方法,比如showProductDetails()。前端控制器根据URL分配给 showProductDetails()作为Handler来处理请求)
(ModelAndView( 逻辑视图名称==一个标识符)对象用于在 控制器处理请求后,将数据传递给视图进行展示。用于->将数据模型和视图封装在一起, 方便在Web应用程序中进行数据传递和视图渲染。)
- SpringMVC的 3个组件 :
- HandlerMapping处理器映射器:功能是根据请求的URL或其他标识符来确定是应该使用哪个Handler来处理请求。将请求映射到适当的Handler,以便后续的处理。
- HandlerAdapter处理器适配器功能是将请求交给对应的Handler进行处理。它负责将请求对象适配到Handler的方法上,并根据Handler的处理结果生成响应。
- ViewResolver 视图解析器: 控制器处理请求后会返回一个ModelAndView( 逻辑视图名称==一个标识符), ViewResolver的作用就是根据ModelAndView,找到(映射)对应的实际View对象,然后进行视图渲染
解析 Web应用 :
当我们在开发Web程序时,通常会使用 MVC架构模式来组织代码. 控制器(Controller)是MVC中的一个重要组件,用于接收和处理用户请求,并调用相应的业务逻辑 来生成响应。
- 假设有一个 xxxController控制器, 它首先会被部署到 Tomcat服务器(是Servlet载体, 包含了DispatcherServlet)上, 等待接受浏览器请求......当收到一个HTTP请求时, Tomcat(DispatcherServlet)会将请求转发给xxxController处理.
- 然后xxxController控制器会根据请求中的URL等确定具体要执行哪个业务逻辑, 确定后会 调用响应Server层处理请求....最后控制器生成响应结果返回给SpringMVC框架, 最后返回给浏览器