方法参数
下表显示了受支持的控制器方法参数。
需要阻塞I/O(例如,读取请求体)才能解析的参数支持响应式类型(Reactor、RxJava或其他)。这在“描述”列中进行了标记。不需要阻塞的参数不期望使用响应式类型。
JDK 1.8的java.util.Optional被支持作为方法参数,与具有required属性的注解(例如,@RequestParam、@RequestHeader等)结合使用时,等同于required=false。
| 控制器方法参数 | 描述 |
|---|---|
|
访问完整的 |
|
访问HTTP请求或响应。 |
|
访问会话。这不会强制启动新会话,除非添加了属性。支持响应式类型。 |
|
当前已认证的用户——如果已知,可能是特定的 |
|
请求的 HTTP 方法。 |
|
当前请求区域设置,由可用的最具体 |
|
与当前请求关联的时区,由 |
|
用于访问URI模板变量。请参阅URI模式。 |
|
用于访问URI路径段中的名称-值对。请参阅矩阵变量。 |
|
用于访问查询参数。参数值转换为声明的方法参数类型。请参阅 请注意,使用 |
|
用于访问请求头。头值转换为声明的方法参数类型。请参阅 |
|
用于访问Cookie。Cookie值转换为声明的方法参数类型。请参阅 |
|
用于访问HTTP请求体。通过使用 |
|
用于访问请求头和请求体。请求体通过 |
|
|
|
用于访问HTML控制器中使用的模型,并作为视图渲染的一部分暴露给模板。 |
|
用于访问模型中现有属性(如果不存在则实例化),并应用数据绑定和验证。请参阅 请注意,使用 |
|
用于访问命令对象(即 |
|
用于标记表单处理完成,这会触发通过类级别 |
|
用于准备相对于当前请求的主机、端口、方案和上下文路径的URL。请参阅URI链接。 |
|
用于访问任何会话属性——与作为类级别 |
|
用于访问请求属性。有关详细信息,请参阅 |
任何其他参数 |
如果方法参数与上述任何一种都不匹配,则默认情况下,如果它是简单类型(由BeanUtils#isSimpleProperty确定),则解析为 |