以往我用的上传文件都是Flex写的,最近html页面需要上传页面功能。
相比之下,比flex还是要麻烦一些,问题也多一些。这里记录下:
ajax上传文件,我用到了ajaxfileupload.js修正版。
<form id="addAttaForm" enctype="multipart/form-data">
<div class="row">
<label for="fileUpload">请选择要上传的文件:</label>
<input type="file" name="fileUpload" id="fileUpload"/>
</div>
<div class="row">
<input type="button" οnclick="uploadShouGongFiles()" value="Upload" />
</div>
</form>
$.ajaxFileUpload({
url: url, //用于文件上传的服务器端请求地址
secureuri: false, //是否需要安全协议,一般设置为false
fileElementId: 'fileUpload', //文件上传域的ID
dataType: 'text', //返回值类型 一般设置为json
data:{},//其他需要传的参数
success: function (data, status)
{
},
error: function (data, status, e)
{
}
});
后台:
@RequestMapping("/upLoadFile")
public String upLoadFile(HttpServletRequest request) {
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
MultipartFile file = multipartRequest.getFile("fileToUpload");
System.out.println(file.getOriginalFilename());
System.out.println(file.getName());
return "";
}