方法参数
下表描述了支持的控制器方法参数。不支持任何响应式类型的参数。
JDK 8的java.util.Optional
被支持作为方法参数,结合具有required
属性的注解(例如@RequestParam
,@RequestHeader
等),等效于required=false
。
控制器方法参数 | 描述 |
---|---|
|
通用访问请求参数和请求以及会话属性,无需直接使用Servlet API。 |
|
选择任何特定的请求或响应类型,例如 |
|
强制存在会话。因此,这样的参数永远不会是 |
|
Servlet 4.0推送构建器API,用于程序化HTTP/2资源推送。请注意,根据Servlet规范,如果客户端不支持该HTTP/2功能,则注入的 |
|
当前经过身份验证的用户,如果已知可能是特定的 请注意,如果此参数被注解以允许自定义解析器在回退到通过 |
|
请求的HTTP方法。 |
|
当前请求的区域设置,由最具体的可用 |
|
与当前请求关联的时区,由 |
|
用于访问由Servlet API公开的原始请求主体。 |
|
用于访问由Servlet API公开的原始响应主体。 |
|
用于访问URI模板变量。请参阅URI模式。 |
|
用于访问URI路径段中的名称-值对。请参阅矩阵变量。 |
|
用于访问Servlet请求参数,包括多部分文件。参数值将转换为声明的方法参数类型。请参阅 请注意,对于简单的参数值,使用 |
|
用于访问请求头。头值将转换为声明的方法参数类型。请参阅 |
|
用于访问Cookie。Cookie值将转换为声明的方法参数类型。请参阅 |
|
用于访问HTTP请求主体。通过使用 |
|
用于访问请求头和主体。主体将使用 |
|
用于访问 |
|
用于访问在HTML控制器中使用的模型,并作为视图渲染的一部分暴露给模板。 |
|
指定在重定向时要使用的属性(即要附加到查询字符串)和要临时存储的闪存属性,直到重定向后的请求。请参阅重定向属性和闪存属性。 |
|
用于访问模型中的现有属性(如果不存在则实例化),并应用数据绑定和验证。请参阅 请注意,使用 |
|
用于访问验证和数据绑定的错误,用于命令对象(即 |
|
用于标记表单处理完成,触发通过类级别 |
|
用于准备相对于当前请求的主机、端口、方案、上下文路径和Servlet映射的URL。请参阅URI链接。 |
|
用于访问任何会话属性,与作为类级别 |
|
用于访问请求属性。请参阅 |
任何其他参数 |
如果方法参数与此表中先前的任何值都不匹配,并且它是一个简单类型(由BeanUtils#isSimpleProperty确定),则将其解析为 |