-
用途:
@RequestPart
: 主要用于从请求中获取请求的“部分”,通常用于处理文件上传等场景,将请求中的文件部分映射到方法的参数上。@RequestParam
: 用于从请求中获取普通的请求参数,比如查询字符串参数、表单参数等,将这些参数的值映射到方法的参数上。
-
适用对象:
@RequestPart
: 适用于文件上传等情况,将文件或其他二进制数据映射到方法的参数上,一般用于multipart/form-data
类型的请求。@RequestParam
: 适用于获取普通的文本参数,比如通过 URL 查询参数或表单提交的参数。
-
参数类型:
@RequestPart
: 通常用于映射文件类型的参数,例如MultipartFile
。@RequestParam
: 用于映射普通的文本类型参数,例如String
、int
、boolean
等。
-
默认行为:
@RequestPart
: 通常不需要显式指定@RequestPart
,当处理multipart/form-data
类型的请求时,Spring 会自动识别并使用该注解。@RequestParam
: 作为常见的请求参数处理方式,需要显式指定参数名称、是否必需、默认值等属性。
示例:
@PostMapping("/upload")
public void uploadFile(@RequestPart("file") MultipartFile file) {
// 处理上传的文件
}
@GetMapping("/hello")
public String sayHello(@RequestParam(name = "name", defaultValue = "zhangsan") String name) {
return "Hello, " + name + "!";
}