multipart/form-data断点上传问题

poikillll 2013-06-05 04:31:59
我有一个云盘项目,需要从页面上传用户个人文件到服务端,此时页面应该用multipart/form-data来提交数据,如下:
<form id="uploadFile" action="portal/admin/batchsms/importcontact/" method="post" enctype="multipart/form-data" target="hidden_frame">
<input type="file" name="file" id="importFile"/>
</form>

controller文件大致如下:
@RequestMapping(value = "/importcontact", method = RequestMethod.POST)
public void importContact(@RequestParam(value = "file") MultipartFile file,
PrintWriter out, HttpServletRequest request) {
logger.debug("start process ...");
dosomething...
}

上传文件支持大文件,此时选择一个文件时点击上传提交时,发现这个文件是整个上传到服务器后才执行controller,才打印出start process...

这里有几个问题想问下高人
1:这个文件是以什么形式上传到服务器的?以临时文件存放还是以字节流形式保存在内存中?
2:这样情况下,一旦抛异常,超时,文件就必须重新传了,因为传的过程中不知道从何处去控制,此时该如何实现上传暂停功能?
...全文
181 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
请问楼主,这种方式上传有什么优势吗?或者说 最大能上传多少GB的文件 效率怎么样 我最近也碰到上传大附件的问题,找不到解决方法
yktd26 2013-06-05
  • 打赏
  • 举报
回复
纯html+js需要支持ajax upload file,也就是ie8之前不行 用ajax上传可以abort一个request所以是个简单的问题 但是如果想要断点续传,需要支持chunk,也就是要支持html5的file api,也需要服务器端的支持, 否则需要其他的客户端支持,比如说applet或者flash 前一段时间找到一个不错的客户端叫http://www.plupload.com/可以看看
poikillll 2013-06-05
  • 打赏
  • 举报
回复
yktd26你好,谢谢你的回答,上传暂停客户端还可以考虑这里有啥想法说说,参考参考
yktd26 2013-06-05
  • 打赏
  • 举报
回复
1. 临时文件 2. 上传暂停客户端还可以考虑,服务端没做过也看不到如何做

81,095

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧