在web開發中,常常會遇到上傳文件的需求,比如上傳視頻和圖片,之前做上傳功能的時候,就是使用IO流來操作,這種需要熟悉IO各種輸入輸出流,當然本人還是希望開發能對IO進行深度學習,如果掌握了,不妨可以嘗試使用transferTo()來進行文件的上傳操作。
前端頁面寫法(form表單提交):
<label class="col-sm-2 control-label no-padding-right" for="form-field-1">視頻:</label>
<div class="col-sm-3">
<input type="file" id="media" name="myfile" />
<input type="hidden" name="mediaName" value=""/>
</div>
<input type="button" class="btn btn-small btn-base" title="保存" οnclick="tijiao();" value="保存">
提交就是使用jquery的ajaxSubmit函數進行整個表單的提交。
後端核心代碼寫法:
public void fileUpload(@RequestParam("myfile") MultipartFile[] myfile) {
try {
int len = myfile.length;
for (int i = 0; i < len; i++) {
MultipartFile file = myfile[i];
if (file.isEmpty()) {
// TODO文件爲空時處理
return;
} else {
file.transferTo(new File("服務器文件上傳目錄" + file.getName()));
}
}
} catch (Exception e) {
e.printStackTrace();
}
return;
}