当前位置: 首页 > wzjs >正文

什么公司做企业网站机械网站建设多少钱

什么公司做企业网站,机械网站建设多少钱,校园网站建设的背景,精准引流怎么推广28、请求处理-【源码分析】-请求映射原理 Spring Boot 的请求映射原理主要基于 Spring MVC 框架,通过 DispatcherServlet 前端控制器实现。以下是详细的请求映射过程: ### 1. 请求进入 DispatcherServlet 当客户端发送请求时,首先由 Dispatch…

28、请求处理-【源码分析】-请求映射原理

Spring Boot 的请求映射原理主要基于 Spring MVC 框架,通过 `DispatcherServlet` 前端控制器实现。以下是详细的请求映射过程:

### 1. 请求进入 `DispatcherServlet`

当客户端发送请求时,首先由 `DispatcherServlet` 接收。`DispatcherServlet` 是 Spring MVC 的核心,负责处理所有进入应用的请求。

### 2. 查找处理器映射 (`HandlerMapping`)

`DispatcherServlet` 调用 `getHandler(HttpServletRequest request)` 方法,遍历配置的 `HandlerMapping` 列表,查找能够处理当前请求的处理器。

#### `HandlerMapping` 类型

Spring Boot 默认配置了多个 `HandlerMapping`:

- **`RequestMappingHandlerMapping`**:最重要的映射器,负责处理 `@RequestMapping` 注解标记的控制器方法。保存了所有 `@RequestMapping` 注解与处理方法的映射关系。

- **`WelcomePageHandlerMapping`**:处理根路径 (`/`) 请求,映射到默认的欢迎页面(如 `index.html`)。

- **`BeanNameUrlHandlerMapping`**:将 Bean 名称作为 URL 进行映射。

- **`SimpleUrlHandlerMapping`**:通过配置文件显式定义的简单 URL 映射。

- **`RouterFunctionMapping`**:处理基于函数式编程的 WebFlux 路由。

### 3. 匹配请求路径和处理方法

`RequestMappingHandlerMapping` 根据请求的路径、HTTP 方法、请求参数等信息,匹配最适合的处理方法。匹配规则包括:

- **URL 路径匹配**:精确匹配、通配符匹配 (`*`)、路径变量 (`/{variable}`)、正则表达式 (`/{regex:pattern}`)。

- **HTTP 方法匹配**:`GET`、`POST`、`PUT`、`DELETE` 等。

- **请求头匹配**:通过 `@RequestMapping` 的 `headers` 属性指定。

- **请求参数匹配**:通过 `params` 属性指定。

### 4. 确定处理方法和拦截器

一旦找到匹配的处理器,`HandlerMapping` 返回一个 `HandlerExecutionChain`,包含处理方法和相关的拦截器(`HandlerInterceptor`)。

### 5. 调用处理器适配器 (`HandlerAdapter`)

`DispatcherServlet` 根据处理方法的类型,选择合适的 `HandlerAdapter` 执行处理方法。常见的适配器有:

- **`RequestMappingHandlerAdapter`**:处理 `@RequestMapping` 注解的方法。

- **`SimpleControllerHandlerAdapter`**:处理实现 `Controller` 接口的类。

### 6. 执行处理方法

`HandlerAdapter` 调用处理方法,并处理参数解析和返回值处理:

- **参数解析**:使用 `HandlerMethodArgumentResolver` 解析请求参数,支持多种参数类型,如请求体 (`@RequestBody`)、路径变量 (`@PathVariable`)、请求头 (`@RequestHeader`) 等。

- **返回值处理**:使用 `HandlerMethodReturnValueHandler` 处理返回值,支持视图解析、JSON 序列化等。

### 7. 返回结果

处理方法执行后,返回 `ModelAndView` 对象或直接返回数据。`DispatcherServlet` 根据返回值进行视图渲染或直接响应数据给客户端。

### 总结

Spring Boot 的请求映射原理通过 `DispatcherServlet`、`HandlerMapping`、`HandlerAdapter` 等组件协同工作,实现了请求路径与处理方法的映射,以及请求参数和返回值的处理。开发者可以通过 `@RequestMapping` 等注解灵活配置请求映射规则,构建 RESTful API 和 Web 应用。

---

通过以上步骤,Spring Boot 完成了从接收请求到返回响应的整个流程,实现了高效、灵活的请求处理机制。


文章转载自:

http://yGgTeL04.jgrjj.cn
http://GHtZVTB8.jgrjj.cn
http://FwtopDHJ.jgrjj.cn
http://IjFvUHlf.jgrjj.cn
http://Dh7SgQRC.jgrjj.cn
http://uLmCNFl8.jgrjj.cn
http://cuqkWM52.jgrjj.cn
http://qxdWcQ17.jgrjj.cn
http://6gHskRNh.jgrjj.cn
http://Mwb2ZQ5M.jgrjj.cn
http://poyq4SMZ.jgrjj.cn
http://O8G4serq.jgrjj.cn
http://infpCFO3.jgrjj.cn
http://GjJFfRYK.jgrjj.cn
http://dcJ1K7CI.jgrjj.cn
http://OmtDrXHR.jgrjj.cn
http://PhArDyCJ.jgrjj.cn
http://lsu0lsCG.jgrjj.cn
http://wHboNyTZ.jgrjj.cn
http://W8TReklg.jgrjj.cn
http://11gyQTfw.jgrjj.cn
http://gGdQx09M.jgrjj.cn
http://pHyKShQD.jgrjj.cn
http://z0pEtnmB.jgrjj.cn
http://H1VEh4N8.jgrjj.cn
http://jAdkbJoB.jgrjj.cn
http://MlAcORl5.jgrjj.cn
http://cWwIstz8.jgrjj.cn
http://ehDW0ZrS.jgrjj.cn
http://uSg3Jwhd.jgrjj.cn
http://www.dtcms.com/wzjs/612719.html

相关文章:

  • 东莞网站建设备案深圳建设网招标公告
  • 装饰网站建设公司网站搜索引擎推广方案
  • 诸城网站制作网站广审怎么做
  • 网站建设主要课程在海口注册公司需要什么条件
  • 大良网站建设如何长春市人才网
  • 腾讯云服务器如何建设网站接了做网站的单子流程
  • wordpress 判断语句长春网站排名优化价格
  • 网站系统参数设置外链生成
  • 昌图网站推广某企业网站建设方案论文
  • 做网站员培训小型网站有哪些
  • 做电影网站要不要收费的电商软件开发公司
  • 网站如何做搜狗搜索引擎linux做ppt下载网站
  • 常州 网站设计郑州最新情况
  • 公司网站如何做水印广东网站建设公司网络服务
  • 网站备案会过期吗手机客户端app下载安装
  • 网站里的团队建设范本中工信融营销型网站建设
  • 服务器wordpress版本更新宁波seo网络推广价格详情
  • wordpress 产品分类seo推广策略
  • 长沙网站制作公司哪家好湖北省建设工程造价信息网
  • cms网站栏目介绍ps做网站图
  • 佛山建网站定制网站平台多少钱
  • 凡客网站建立上海缘魁网站建设
  • 网站500错误是什么意思深圳住建局官网查询系统
  • 九江浔阳网站建设wordpress 4.4.7
  • 建设银行网站设计特点wordpress不能更改邮箱
  • 环保公司网站建设内容网站开发服务合同印花税
  • 北京的做网站的公司互联网的营销推广方式
  • 云南网站推广公司提供网站设计服务商
  • 网站建设公司如何选取阿里云 多个网站
  • 网站首页html代码一款app是如何制作出来的