我是用form表单来获取文件的
首先在html文件中添加标签
<form id="formfile">
<input type="file" name="file">
</form>
然后在js中获取表单
var formData = new FormData($("#formfile")[0]);
这样再通过ajax将值传递到控制器层就可以操作上传的文件了
$.ajax({
type : "POST",
url : "/自己控制器的路径",
data: formData,
async: false,//关闭异步操作
cache: false,
contentType: false,
processData: false,
success : function(data) {
//返回的操作
}
});
这样就可以将文件传输到控制器层了
控制器层接收:
@PostMapping("/insert")
@ResponseBody
public Integer file(MultipartFile file){
//MultipartFile 可以用来接收传回的文件
String name = file.getOriginalFilename();//获得文件名称
InputStream inputStream = file.getInputStream();//获取输入流
File file2=new File(filelujin,filename);
FileOutputStream fileOutputStream = new FileOutputStream(file2);//获得文件输出流
IOUtils.copy(inputStream,fileOutputStream);//存入文件
//关闭流
inputStream.close();
fileOutputStream.close(); }
这样下来就是一个简单的上传文件的流程了