处理文件的时候一般还是通过表单的形式来进行传递,但是使用文件的表单和一般的表单还是有着一定的区别的,而这唯一的区别就是在方法后面添加一个ENCTYPE属性,并且设置其为多部分/ form-data。
例如
页面:
<form action =“#”th:action =“@ {/ fileUpload}”method =“post”enctype =“multipart / form-data”>
<input type =“file”name =“ fileName“>
<input type =”submit“name =”submit“>
</ form>
控制类:
@PostMapping(“fileUpload”)
@ResponseBody
public String getFileUpload(@RequestParam(“fileName”)MultipartFile file)抛出IOException
{
byte [] bytes = file.getBytes();
return“成功上传文件”;
}
这里的方法里有一个参数为MultipartFile类,这个即页面的文件类,通过注解将文件名的文件类型对象传递给文件,然后可以在该方法里进行数据库的存储和其他的操作,然后返回一个消息提示用户上传成功。
注意:在默认的情况下弹簧支持的大小仅为128K,因此可以在配置文件中修改大小。如:
multipart.maxFileSize = 1024KB
multipart.maxRequestSize:1024KB
表示限制文件的大小,应该是两个数据的值一样,并且两个参数都要进行设置。