java大文件解析_java大文件(百M以上)的上传下载实例解析
javaweb上传文件
上传文件的jsp中的部分
上传文件同样可以使用form表单向后端发请求,也可以使用 ajax向后端发请求
1.通过form表单向后端发送请求
Save
改进后的代码不需要form标签,直接由控件来实现。开发人员只需要关注业务逻辑即可。JS中已经帮我们封闭好了
通过监控工具可以看到控件提交的数据,非常的清晰,调试也非常的简单。
2.通过ajax向后端发送请求
1.
$.ajax({
url :“${pageContext.request.contextPath}/UploadServlet”,
type:“POST”,
data : $(‘#postForm’).serialize(),
success :function(data){
$(‘#serverResponse’).html(data);
},
error:function(data){
$(‘#serverResponse’).html(data.status+” : “+ data.statusText +” : “+ data.responseText);
}
});
ajax分为两部分,一部分是初始化,文件在上传前通过AJAX请求通知服务端进行初始化操作
在文件上传完后向服务器发送通知
这里需要处理一个MD5秒传的逻辑,当服务器存在相同文件时,不需要用户再上传,而是直接通知用户秒传
这里可以看到秒传的逻辑是非常 简单的,并不是特别的复杂。
var form = new FormData();
form.append(“username”,“zxj”);
form.append(“avatar”,file);
//var form = new FormData($(“#postForm”)[0]);
$.ajax({
url:“${pageContext.request.contextPath}/UploadServlet”,
type:“post”,
data:form,
processData:false,
contentType:false,
success:function(data){
console.log(data);
}
});
java部分
文件初始化的逻辑
接收文件块数据,在这个逻辑中我们接收文件块数据。控件对数据进行了优化,可以方便调试。如果用监控工具可以看到控件提交的数据。
注:
1.上面的java部分的代码可以直接使用,只需要将上传的图片路径及收集数据并将数据写入到数据库即可
2.上面上传文件使用到了字节流,其实还可以使用别的流,这个需要读者自己在下面完善测试
3. BeanUtils是一个工具 便于将实体对应的属性赋给实体
4.上传文件不能使用 request.getParameter(“”)获取参数了,而是直接将request解析,通过判断每一项是文件还是非文件,然后进行相应的操作(文件的话就是用流来读取,非文件的话,暂时保存到一个map中。)
欢迎入群一起讨论:374992201
java大文件解析_java大文件(百M以上)的上传下载实例解析相关推荐
- kingedit 上传php_php文件上传下载实例(实现最简单的网盘功能)
本人是一个新手代码狗,第一次发表博客,欢迎大大们指点! 最近手头有一个文件上传下载的案例,跟大家一起分享一下作为一个新手的苦逼成长历程! 话不多说,先上代码: 一:这个是一个文件上传的html页面,小 ...
- Spring MVC文件上传下载实例
工程目录: 导入jar: controllers.FileControler.java package controllers;import java.io.File; import java.io. ...
- Struts2中文件上传下载实例
1.单文件上传 1 jsp页面: 2 3 <!-- 单文件上传 --> 4 <form action="Fileupload.action" method=&qu ...
- python上传文件进度_python实现进度条--主要用在上传下载文件
在python中进行socket上传文件的时候使用进度条,然后在网上找了好久,找寻相关的进度的条的使用,看了几个,发现总是无法进行调用,主要原因是在进行上传文件的时候,每次传送的数据量是固定的,数据的 ...
- JavaWeb - Excel/Word(2003/2007、上传/下载、解析/生成、导入/导出)
案例分析 技术说明 Ps:导出Word还需要关注一个"格式"的问题,否则就没必要用Word了,直接txt更方便. Ps:Word 2003:HwPFDocument:Word 20 ...
- linux文件传输限制带宽,linux – 如何限制CentOS服务器上传/下载带宽?
我在这里为你添加脚本代码时遇到了麻烦,可以通过这个要点获得 – https://gist.github.com/akrasic/7242498#file-limit-tc-sh 该脚本使用TC和Hie ...
- Java实现FTP批量大文件上传下载
用Java实现FTP批量大文件上传下载 <iframe id="I0_1416224567509" style="margin: 0px; padding: 0px ...
- 基于华为云obs实现文件上传下载(技术栈mysql+springboot+Maven+jsp+java)的技术分享
基于华为云obs实现文件上传下载(技术栈mysql+springboot+jsp+java)的技术分享 obs实现文件上传下载 前言 一.OBS是什么? 二.使用步骤 1.1 前期准备 2 工具的内容 ...
- springboot上传下载文件(4)--上传下载工具类(已封装)
因为在做毕设,发现之前的搭建ftp文件服务器,通过ftp协议无法操作虚拟机临时文件,又因为ftp文件服务器搭建的比较麻烦:而 hadoop的HDFS虽然可以实现,但我这里用不到那么复杂的:所以我封装了 ...
最新文章
- 将ImageVIew中的图片保存到本地相册中
- layer.load 支持文字内容
- JAVA大数_棋盘覆盖
- delete mysql 大表_无语了,直到今天,我才揪出MySQL磁盘消耗迅猛的“真凶”!
- 备份MySQL数据库的命令
- 利用 jQuery 克隆 Object
- python3 之 天天生鲜 项目 缓存cache
- C#串口通信工作笔记0002---上位机开发_嵌入式_串口助手_控制下位机的开关
- docker启动nginx代理不上_用 docker-compose 启动 nginx, network 为 host, nginx 无法启动是怎么回事?...
- jquery 多个class操作
- python深复制_Python深浅拷贝
- python 接受前端文件并上传
- PC端微信自动发送机器人
- Tenorshare UltData(苹果数据恢复软件)v8.5.3官方版
- Python使用forward,left,right等画多颜色图形
- 【Matlab代码】显示多幅图像
- EventBus使用详解(二)——EventBus使用进阶
- 自动化测试之 ddt 驱动 excel 文件
- 电脑的开机密码忘记了怎么打开
- 佟大为漂亮可爱女儿首度曝光(图)
热门文章
- go语言 不支持动态加载_动态语言支持
- 成为java高手_我如何想成为Java
- 如何在Java JVM中处理图像和视频
- javafx中的tree_JavaFX中的塔防(4)
- eventbus多个订阅_番石榴的EventBus –简单的发布者/订阅者
- java 解析gson_使用Java和Google GSON解析ESPN API
- java 对象锁定_少锁定Java对象池
- 了解java.nio.file.Path – 1
- Thymeleaf 3 – Thymeleaf 3和Spring MVC快速入门
- 关于java包_关于Java包