Spring Boot请求处理-常用参数注解

  1. @PathVariable 路径变量
  2. @RequestParam 获取请求参数
  3. @RequestHeader 获取请求头
  4. @RequestBody 获取请求体【Post】
  5. @CookieValue 获取Cookie值
  6. RequestAttribute 获取request域属性
  7. @ModelAttribute

1. @PathVariable

该注解主要用于rest风格的搭配使用,请求路径中不再以k:v的形式给出请求参数和值;而是直接给定一个值。如果方法参数是一个Map将会包含路径中所有的变量与值。

2. @RequestParam

该注解主要用于获取请求参数名称,设置参数是否可用可无以及默认值。

3. @RequestHeader

该注解主要用于获取请求头header中的数据,客户端请求之后可以拿到一些头部携带的参数。支持传统的SpringMVC,也支持WebFlux响应式。如果方法参数是一个Map将会包含所有的请求头与值。

4. @RequestBody

该注解主要获取表单或者ajax提交的内容,将表单中提交的参数与值获取全部获取出来。即获取请求体(请求必须是post请求–@PostMapping),一般情况下都会使用@RequestBody注解将参数映射到pojo类的能力,但是要保证前后传入的参数名是一样的。

5. @CookieValue

该注解主要用于获取Cookie值

6. @RequestAttribute

该注解主要用在请求转发时,如果页面无法直接跳转(如WEB-INF下的success页面)可以使用转发的手段。当进行转发时可以在请求中携带上请求的参数,转发会携带上一次请求的参数(一次完整的请求包括转发)

由于是同一次请求,因此也可以直接拿到原生的HttpServletRequest,然后从这里面拿参数和属性也都是可以的【获取request域属性】。

Spring Boot请求处理-常用参数注解_第1张图片

7. @ModelAttribute

  1. 用法1:用在入参

  2. 用法2:用在方法上
    @ModelAttribute—链接

你可能感兴趣的:(spring,boot,java,servlet)