1:如果单独的只有实体对象,对象里面没有MultipartFile属性
1-1:DTO对象
@Slf4j
@Data
public class PaperFileDTO {
private String paperFileName;
private Integer auditTypeId;
private String studyType;
private Integer studyTypeId;
private Integer paperDuration;
private String joinNumber;
private String paperAttention;
private String[] paperTime;
}
1-2:第一种方法:springMVC接受参数@RequestBody
@PostMapping(value = "/upload/document")
public Result<String> uploadFile( @RequestBody PaperFileDTO paperFileDTO) {
MultipartFile file=null;
String result = sysStudyPaperFileService.uploadFile(paperFileDTO,file);
return Result.OK(result);
}
1-3:第二种方法:springMVC接受参数
@PostMapping(value = "/upload/document")
public Result<String> uploadFile( PaperFileDTO paperFileDTO) {
MultipartFile file=null;
String result = sysStudyPaperFileService.uploadFile(paperFileDTO,file);
return Result.OK(result);
}
2:第一种接受方法:前端传送过来有对象和MultipartFile
2-1:DTO对象
@Slf4j
@Data
public class PaperFileDTO {
private String paperFileName;
private Integer auditTypeId;
private String studyType;
private Integer studyTypeId;
private Integer paperDuration;
private String joinNumber;
private String paperAttention;
private String[] paperTime;
private MultipartFile file;
}
2-2:MultipartFile 封装在对象里,就不能使用@RequestBody接受springMVC参数,只能这样接收
public Result<String> uploadFile(PaperFileDTO paperFileDTO) {
MultipartFile file=null;
String result = sysStudyPaperFileService.uploadFile(paperFileDTO,file);
return Result.OK(result);
}
3:第二种接受方法:前端传送过来有对象和MultipartFile
2-1:DTO对象
@Slf4j
@Data
public class PaperFileDTO {
private String paperFileName;
private Integer auditTypeId;
private String studyType;
private Integer studyTypeId;
private Integer paperDuration;
private String joinNumber;
private String paperAttention;
private String[] paperTime;
}
2-2:MultipartFile 不封装在对象里,这样接收
public Result<String> uploadFile( PaperFileDTO paperFileDTO,@RequestBody MultipartFile file) {
String result = sysStudyPaperFileService.uploadFile(paperFileDTO,file);
return Result.OK(result);
}
前端必须使用multipart 和form-data
3:接受MultipartFile接受参数必须和前端传参一致或者用@RequestParam(“file”)指定
public Result<String> uploadFile( PaperFileDTO paperFileDTO,@RequestParam("file") MultipartFile multipartFile ) {
String result = sysStudyPaperFileService.uploadFile(paperFileDTO,multipartFile );
return Result.OK(result);
}
4:多文件上传用MultipartFile[] 接受
public Result<String> uploadFile( @RequestBody MultipartFile[] multipartFile ) {
for (int i = 0; i < multipartFile.length ; i++) {
sysStudyPaperFileService.uploadFile(multipartFile[i] );
}
return Result.OK("上传完成");
}
5:不可以这样传参,只能会有一个传参成功paperFile或者file:
@Data
public class PaperFileDTO {
private PaperFile paperFile;
private MultipartFile file;
}