JAVA WEB怎么实现大文件上传(上G的文件)

Yadoer 2014-11-23 07:14:39
JAVA web怎么实现上G的文件上传。好像用Struct2对大文件支持有限。比如百度云硬盘,还要邮箱的大附件上传方式。都是用什么技术实现的,activex技术,ftp方式,还是其他什么方式
...全文
5013 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
快乐的2 2014-11-28
  • 打赏
  • 举报
回复
上传协议还可以使用HTTP,不过需要使用分割上传后台组装的思想。 1.进行前台使用Flash插件进行分割上传,也就是把每次上传的数据限制在50M或者100M以内,同时把文件名称、分包数量,当前包索引值等参数和分包数据按照顺序传到后台。 2.后台上传方法读取分包数量及当前包的索引定位到该数据所在文件的位置,并把输入write到正确位置,当所有包上传成功即可组合所有文件。
missMeyo 2014-11-27
  • 打赏
  • 举报
回复
自己开发达不到那么好的效率。
ghx287524027 2014-11-24
  • 打赏
  • 举报
回复
引用 3 楼 My_Jobs 的回复:
[quote=引用 1 楼 ghx287524027 的回复:] 解决这种大文件上传不太可能用web上传的方式,只有自己开发插件或是当门客户端上传,或者用现有的ftp等。 1)开发一个web插件。用于上传文件。 2)开发一个FTP工具,不用web上传。 3)用现有的FTP工具。 下面是几款不错的插件,你可以试试: 1)Jquery的uploadify插件。具体使用。你可以看帮助文档。 2)网上有一个Web大文件断点续传控件:http://www.cnblogs.com/xproer/archive/2012/02/17/2355440.html 此控件支持100G文件的断点续传操作,提供了完善的开发文档,支持文件MD5验证,支持文件批量上传。 JavaUploader免费开源的,是用applet实现的,需要签名才能在浏览器上用,支持断点。缺点是收费。 3)applet也是一种方式,MUPLOAD组件就是以APPLET方式处理的。 如果你不需要访问用户的硬盘文件,那你可以使用FTP上传,也支持断点。但只要你访问用户磁盘,又要支持断点,那必须要签名的。不然浏览器不知道你的身份。
那只能采取web插件形式了[/quote] 上面说的那几个工具都支持大文件传输的,1g应该不是问题
Inhibitory 2014-11-24
  • 打赏
  • 举报
回复
引用 6 楼 My_Jobs 的回复:
[quote=引用 5 楼 Inhibitory 的回复:] [quote=引用 4 楼 My_Jobs 的回复:] [quote=引用 2 楼 Inhibitory 的回复:] 有这种重量级的需求,花钱买个商业的插件吧。
那要是想自己开发呢?很难实现?[/quote] 程序都是人写的,这个取决于你的对这方面的了解程度,有的人写很简单,有的人就很难,因人而异[/quote] 能大概给个方向么?[/quote] 能给你的方向只能是百度,Google了
Yadoer 2014-11-24
  • 打赏
  • 举报
回复
引用 5 楼 Inhibitory 的回复:
[quote=引用 4 楼 My_Jobs 的回复:] [quote=引用 2 楼 Inhibitory 的回复:] 有这种重量级的需求,花钱买个商业的插件吧。
那要是想自己开发呢?很难实现?[/quote] 程序都是人写的,这个取决于你的对这方面的了解程度,有的人写很简单,有的人就很难,因人而异[/quote] 能大概给个方向么?
Yadoer 2014-11-24
  • 打赏
  • 举报
回复
就这样就沉了。。。
Inhibitory 2014-11-24
  • 打赏
  • 举报
回复
引用 4 楼 My_Jobs 的回复:
[quote=引用 2 楼 Inhibitory 的回复:] 有这种重量级的需求,花钱买个商业的插件吧。
那要是想自己开发呢?很难实现?[/quote] 程序都是人写的,这个取决于你的对这方面的了解程度,有的人写很简单,有的人就很难,因人而异
Yadoer 2014-11-24
  • 打赏
  • 举报
回复
引用 2 楼 Inhibitory 的回复:
有这种重量级的需求,花钱买个商业的插件吧。
那要是想自己开发呢?很难实现?
Yadoer 2014-11-24
  • 打赏
  • 举报
回复
引用 1 楼 ghx287524027 的回复:
解决这种大文件上传不太可能用web上传的方式,只有自己开发插件或是当门客户端上传,或者用现有的ftp等。 1)开发一个web插件。用于上传文件。 2)开发一个FTP工具,不用web上传。 3)用现有的FTP工具。 下面是几款不错的插件,你可以试试: 1)Jquery的uploadify插件。具体使用。你可以看帮助文档。 2)网上有一个Web大文件断点续传控件:http://www.cnblogs.com/xproer/archive/2012/02/17/2355440.html 此控件支持100G文件的断点续传操作,提供了完善的开发文档,支持文件MD5验证,支持文件批量上传。 JavaUploader免费开源的,是用applet实现的,需要签名才能在浏览器上用,支持断点。缺点是收费。 3)applet也是一种方式,MUPLOAD组件就是以APPLET方式处理的。 如果你不需要访问用户的硬盘文件,那你可以使用FTP上传,也支持断点。但只要你访问用户磁盘,又要支持断点,那必须要签名的。不然浏览器不知道你的身份。
那只能采取web插件形式了
Yadoer 2014-11-24
  • 打赏
  • 举报
回复
引用 7 楼 Inhibitory 的回复:
[quote=引用 6 楼 My_Jobs 的回复:] [quote=引用 5 楼 Inhibitory 的回复:] [quote=引用 4 楼 My_Jobs 的回复:] [quote=引用 2 楼 Inhibitory 的回复:] 有这种重量级的需求,花钱买个商业的插件吧。
那要是想自己开发呢?很难实现?[/quote] 程序都是人写的,这个取决于你的对这方面的了解程度,有的人写很简单,有的人就很难,因人而异[/quote] 能大概给个方向么?[/quote] 能给你的方向只能是百度,Google了[/quote] 那这论坛的意义何在?
Inhibitory 2014-11-23
  • 打赏
  • 举报
回复
有这种重量级的需求,花钱买个商业的插件吧。
ghx287524027 2014-11-23
  • 打赏
  • 举报
回复
解决这种大文件上传不太可能用web上传的方式,只有自己开发插件或是当门客户端上传,或者用现有的ftp等。 1)开发一个web插件。用于上传文件。 2)开发一个FTP工具,不用web上传。 3)用现有的FTP工具。 下面是几款不错的插件,你可以试试: 1)Jquery的uploadify插件。具体使用。你可以看帮助文档。 2)网上有一个Web大文件断点续传控件:http://www.cnblogs.com/xproer/archive/2012/02/17/2355440.html 此控件支持100G文件的断点续传操作,提供了完善的开发文档,支持文件MD5验证,支持文件批量上传。 JavaUploader免费开源的,是用applet实现的,需要签名才能在浏览器上用,支持断点。缺点是收费。 3)applet也是一种方式,MUPLOAD组件就是以APPLET方式处理的。 如果你不需要访问用户的硬盘文件,那你可以使用FTP上传,也支持断点。但只要你访问用户磁盘,又要支持断点,那必须要签名的。不然浏览器不知道你的身份。

81,092

社区成员

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

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