网站首页 > java教程 正文
java+http+上传文件夹,java上传文件夹,java上传文件夹解决方案,java上传文件夹思路,java上传文件夹实例,java上传大文件,java分块上传大文件,java分片上传大文件,java批量上传大文件,java加密上传大文件,
JSP实现大文件上传和下载,JSP实现大文件批量上传和下载,JSP实现大文件分块上传和下载,JSP实现大文件分片上传和下载,JSP实现大文件切片上传和下载,JSP实现文件夹上传和下载,JSP实现文件夹批量上传和下载,JSP实现大文件加密上传和下载,JSP实现大文件断点续传,JSP实现大文件多线程上传和下载,
java实现大视频上传,java实现大文件上传,java实现大文件分块上传,java实现大文件分片上传,java实现大文件切片上传,java实现大文件批量上传,java实现大文件加密上传,java实现文件夹上传,java实现大文件上传解决方案,java实现大文件上传实例,
java大文件10G上传,JSP大文件10G上传,JAVA大文件10G上传,断点续传。
一般这么大的文件不用HTML的一次性上传,而是采用分块,分片,分段,分割,切割技术上传。
JAVA话一般是负责后端的逻辑,比如文件初始化,文件块上传,合并,存储等。
前端的话用JSP,VUE2,VUE3,React,HTML5,JS,JQ都行。这个都无所谓。
网上一般的做法都是用的HTML5的API,也就是chrome提供的API,能够满足基本需求,但是还是有痛点,chrome限制死了,固定死了无法扩展,每个域名只允许5个TCP连接,导致了速度有上限,你也无法修改和扩展。然后就是浏览器也只能用chrome,用户用了IE就不行了,用户现有的系统跑在IE上,也不能换。
进度信息容易丢失,用户关闭网页,刷新网页,关闭浏览器,重启浏览器,关闭电脑,重启电脑后,进度信息都会丢失,无解,没办法。扩展性还是差了点。
传大文件,超大文件,文件数量多的话,前端就卡,网页反应慢,容易死,崩溃,在配置较差的电脑或者配置一般的电脑上这个痛点体现的非常明显。
客户是一个政府单位,现要求能够在网页上面上传文件夹,文件夹里面大约有1万多个文件,有大有小,大的有1G~10G,小的有几MB,
文件夹上传的时候需要保存层级结构,同时能够将层级结构信息保存到数据库中。要求支持断点续传,支持进度信息离线存储,用户可能传一半没有传完,下班了,明天上班后继续上传,电脑晚上到点需要关机,
断点续传,就是在文件上传的过程中发生了中断,人为因素(暂停)或者不可抗力(断网或者网络差)导致了文件上传到一半失败了。然后在环境恢复的时候,重新上传该文件,而不至于是从新开始上传的。
断点续传的功能是基于分块上传来实现的,把一个大文件分成很多个小块,服务端能够把每个上传成功的分块都落地下来,客户端在上传文件开始时调用接口快速验证,条件选择跳过某个分块。
实现原理,就是在每个文件上传前,就获取到文件MD5取值,在上传文件前调用接口,如果获取的文件状态是未完成,则返回所有的还没上传的分块的编号,然后前端进行条件筛算出哪些没上传的分块,然后进行上传。
当接收到文件块后就可以直接写入到服务器的文件中。
导入项目:
导入到Eclipse:http://www.ncmem.com/doc/view.aspx?id=9da9c7c2b91b40b7b09768eeb282e647
导入到IDEA:http://www.ncmem.com/doc/view.aspx?id=9fee385dfc0742448b56679420f22162
springboot统一配置:http://www.ncmem.com/doc/view.aspx?id=7768eec9284b48e3abe08f032f554ea2
下载示例:
https://gitee.com/xproer/up6-jsp-eclipse/tree/6.5.40/
工程
NOSQL
NOSQL示例不需要任何配置,可以直接访问测试
创建数据表
选择对应的数据表脚本,这里以SQL为例
修改数据库连接信息
访问页面进行测试
文件存储路径
up6/upload/年/月/日/guid/filename
相关问题:
1.javax.servlet.http.HttpServlet错误
2.项目无法发布到tomcat
3.md5计算完毕后卡住
4.服务器找不到config.json文件
相关参考:
文件保存位置
源码工程文档:https://drive.weixin.qq.com/s?k=ACoAYgezAAw1dWofra
源码报价单:https://drive.weixin.qq.com/s?k=ACoAYgezAAwoiul8gl
OEM版报价单:https://drive.weixin.qq.com/s?k=ACoAYgezAAwuzp4W0a
产品源代码:https://drive.weixin.qq.com/s?k=ACoAYgezAAwbdKCskc
授权生成器:https://drive.weixin.qq.com/s?k=ACoAYgezAAwTIcFph1
- 上一篇: Java实现创建Zip压缩包并写入文件
- 下一篇: Java Web 实现文件上传和下载接口功能
猜你喜欢
- 2024-10-18 Java入门教程六(内置包装类)(javaint包装类)
- 2024-10-18 Java 9揭秘-创建你的第一个模块(二)
- 2024-10-18 【推荐】IntelliJ IDEA 使用系列教程(6)-IDEA 创建 Java 项目
- 2024-10-18 Java 9揭秘-创建你的第一个模块(三)
- 2024-10-18 MyBatis——MyBatis开发流程(mybatis的开发环境怎么搭建)
- 2024-10-18 java+上传整个文件夹的所有文件(java中文件上传)
- 2024-10-18 Java 如何获得一个文件或文件夹的大小
- 2024-10-18 JAVA+上传整个文件夹的所有文件(java实现上传文件夹)
- 2024-10-18 Java SE基础教程——Eclipse开发工具的安装与使用
- 2024-10-18 一起学Java-06-创建Maven项目(推荐)
你 发表评论:
欢迎- 最近发表
-
- Java常量定义防暴指南:从"杀马特"到"高富帅"的华丽转身
- Java接口设计原则与实践:优雅编程的艺术
- java 包管理、访问修饰符、static/final关键字
- Java工程师的代码规范与最佳实践:优雅代码的艺术
- 编写一个java程序(编写一个Java程序计算并输出1到n的阶乘)
- Mycat的搭建以及配置与启动(mycat部署)
- Weblogic 安装 -“不是有效的 JDK Java 主目录”解决办法
- SpringBoot打包部署解析:jar包的生成和结构
- 《Servlet》第05节:创建第一个Servlet程序(HelloSevlet)
- 你认为最简单的单例模式,东西还挺多
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)