JAva非同期アップロードファイル(方式2)
4438 ワード
H 5のFormDataを使用して非同期ファイルのアップロードを実現し、ブラウザの互換性に注意することができます.この方法でJSPがH 5に基づいていることを確認してください.フロントエンドコードは次のとおりです.
jsコードは以下の通りです.
バックグラウンドコードは次のとおりです.
jsコードは以下の通りです.
<script>
function formDataSubmit(){
var form = document.getElementById('ff');
var formdata = new FormData(form);
$.ajax({
type: "POST",
url:"upload/formDataSubmit",
data:formdata,
async: false, // , true
contentType : false, // jQuery Content-Type
processData : false, // jQuery
success: function(data) {
if(data == 'true'){
alert(" !");
}else{
alert(" !");
}
}
});
}
script>
バックグラウンドコードは次のとおりです.
// formData
@RequestMapping("/formDataSubmit")
@ResponseBody
public String formDataSubmit(@RequestParam(value = "file", required = false) MultipartFile file,
HttpSession session) {
if (!file.isEmpty()) {
try{
String path = session.getServletContext().getRealPath("/upload/"); //
String fileName = file.getOriginalFilename();
String fileType = fileName.substring(fileName.lastIndexOf(".")); //
String newName=new Date().getTime() + fileType;
File file2 = new File(path,newName); //
file.transferTo(file2);
}catch(Exception e){
return "false";
}
}
return "true";
}