注释类型 RequestPart
@Target(PARAMETER) @Retention(RUNTIME) @Documented public @interface RequestPart
Annotation that can be used to associate the part of a "multipart/form-data" request with a method argument.Supported method argument types include
MultipartFile
in conjunction with Spring'sMultipartResolver
abstraction,javax.servlet.http.Part
in conjunction with Servlet 3.0 multipart requests, or otherwise for any other method argument, the content of the part is passed through anHttpMessageConverter
taking into consideration the 'Content-Type' header of the request part. This is analogous to what @RequestBody
does to resolve an argument based on the content of a non-multipart regular request.Note that @
RequestParam
annotation can also be used to associate the part of a "multipart/form-data" request with a method argument supporting the same method argument types. The main difference is that when the method argument is not a String or rawMultipartFile
/Part
,@RequestParam
relies on type conversion via a registeredConverter
orPropertyEditor
whileRequestPart
relies onHttpMessageConverters
taking into consideration the 'Content-Type' header of the request part.RequestParam
is likely to be used with name-value form fields whileRequestPart
is likely to be used with parts containing more complex content e.g. JSON, XML).- 从以下版本开始:
- 3.1
- 作者:
- Rossen Stoyanchev, Arjen Poutsma, Sam Brannen
- 另请参阅:
RequestParam
,RequestMappingHandlerAdapter
required
boolean required
Whether the part is required.Defaults to
true
, leading to an exception being thrown if the part is missing in the request. Switch this tofalse
if you prefer anull
value if the part is not present in the request.- 默认值:
- true