JavaWeb实现上传文件
需要 commons-io与commons-fileupload
<%@ page contentType="text/html;charset=UTF-8" language="java"%><html><head><title>$Title$</title></head><body><form action="MyServlet" method="post" enctype="multipart/form-data">最简单的文件上传:<input type="file" name="fileupload"/>描述:<input type="text" name="desc"/><input type="submit" value="submit"/></form></body></html>
request.setCharacterEncoding("UTF-8");response.setCharacterEncoding("UTF-8");//1、创建一个DiskFileItemFactory工厂DiskFileItemFactory factory =newDiskFileItemFactory();//2、创建一个文件上传解析器ServletFileUpload upload =newServletFileUpload(factory);//解决上传文件名的中文乱码upload.setHeaderEncoding("UTF-8");factory.setSizeThreshold(1024*500);//设置内存的临界值为500KFile linshi =newFile("E:\\linshi");//当超过500K的时候,存到一个临时文件夹中factory.setRepository(linshi);upload.setSizeMax(1024*1024*5);//设置上传的文件总的大小不能超过5Mtry{// 1. 得到 FileItem 的集合 itemsList<FileItem>/* FileItem */items = upload.parseRequest(request);// 2. 遍历 items:for(FileItem item : items){// 若是一个一般的表单域, 打印信息if(item.isFormField()){String name = item.getFieldName();String value = item.getString("utf-8");System.out.println(name +": "+ value);}// 若是文件域则把文件保存到 e:\\files 目录下.else{String fileName = item.getName();long sizeInBytes = item.getSize();System.out.println(fileName);System.out.println(sizeInBytes);InputStream in = item.getInputStream();byte[] buffer =newbyte[1024];int len =0;fileName ="e:\\files\\"+ fileName;//文件最终上传的位置System.out.println(fileName);OutputStream out =newFileOutputStream(fileName);while((len = in.read(buffer))!=-1){out.write(buffer,0, len);}out.close();in.close();}}}catch(FileUploadException e){e.printStackTrace();}
JavaWeb实现上传文件的更多相关文章
- JavaWeb笔记——上传文件
jsp上传文件 *<form>标签method属性必须为post,并且添加enctype="multipart/form-data"属性 ------------- ...
- javaWeb中使用ajax上传文件
javaWeb上传图片 上传文件所必要的两个jar包:commons-fileupload.jar.commons-io.jar. jar包下载:github路径 核心代码: String withP ...
- JAVAWeb SSH框架 上传文件,如2007的EXCEL
下面的代码是上传EXCEL的代码,其实,就是在上传文件到服务器,代码都差不多,只是接收的文件的类型改一下即可. 1.jsp 用的是struts2 标签 代码: <s:file name=&quo ...
- Javaweb向服务器上传文件以及从服务器下载文件的方法
先导入jar包 点击下载 commons-fileupload是Apache开发的一款专门用来处理上传的工具,它的作用就是可以从request对象中解析出,用户发送的请求参数和上传文件的流. comm ...
- javaWeb开发中关于eclipse等ide重新部署或重启项目等原因造成上传文件丢失问题解决方案
在开发项目时,有时候需要用到上传功能,比如头像上传等,其文件会保存到服务器中.但是我发现在用eclipse做项目的过程中,每次重新部署项目,原来上传的文件就会丢失. 其原因是因为每次项目修改后,ecl ...
- javaweb上传文件夹
我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用. 首先我们需要了解的是上传文件三要素: 1.表单提交方式:post (get方式提交有大小 ...
- [JavaWeb基础] 009.Struts2 上传文件
在web开发中,我们经常遇到要把文件上传下载的功能,这篇文章旨在指导大家完成文件上传功能 1.首先我们需要一个上传文件的页面. <!--在进行文件上传时,表单提交方式一定要是post的方式, 因 ...
- 上传文件服务与web服务分离
业务场景:1. 后端服务为java web应用,使用tomcat容器,多实例集群化部署.2. 前端使用nginx作为后端应用的反向代理. 业务需求:现在需要在java web应用端上传文件,同时还要能 ...
- java+web上传文件夹内的所有文件
javaweb上传文件 上传文件的jsp中的部分 上传文件同样可以使用form表单向后端发请求,也可以使用 ajax向后端发请求 1.通过form表单向后端发送请求 <form id=" ...
随机推荐
- hive 日志配置/表头配置
1.日志配置,拷贝hive/conf下的hive-log4j2.properties.template为hive-log4j2.properties,修改日志目录,接下来在创建hive/logs,目录 ...
- for循环中setTimeout,var与let的不同
先看下面两段代码 for (let i = 0; i < 5; i++) { setTimeout(function () { console.log(i) }, 2000) } for (va ...
- js判断两个时间段是否有交集
//判断两个时间是否有交集 function isDateIntersection(start1, end1, start2, end2) { var startdate1 = new Date(st ...
- 一个简易版的Function.prototype.bind实现
重新看<JavaScript设计模式与开发实践>一书,第32页发现个简易版的Function.prototype.bind实现,非常容易理解,记录在这了. Function.prototy ...
- 聊聊PROFINET与PROFIBUS
1.PROFINET与PROFIBUS从狭义上比,没有可比性,因为他们的物理接口不同,电气特性,不同,波特率不同,电气介质特性不同等等.这样两者的协议是完全没有关联性的,唯一的关联性就是两者都是PI组 ...
- OpenMP 并行程序设计入门
OpenMP 是一个编译器指令和库函数的集合,主要是为共享式存储计算机上的并行程序设计使用的. 0. 一段使用 OpenMP 的并行程序 #include <stdio.h> #inclu ...
- hadoop学习笔记(四)——eclipse+maven+hadoop2.5.2源代码
Eclipse同maven进口hadoop源代码 1) 安装和配置maven环境变量 M2_HOME: D:\profession\hadoop\apache-maven-3.3.3 PATH: % ...
- linux nano 命令
linux nano一linux像pico文本编辑软件,功能少.但是,基本能满足要求
- scipy —— 丰富的子包(io、cluster)
io,顾名思义,input/output,输入输出接口: 1. io Input and output (scipy.io) - SciPy v0.18.1 Reference Guide wavfi ...
- jupyter_远程安装&问题
安装: https://jupyter.readthedocs.io/en/latest/install.html#install 配置 Ubuntu 16.04 LTS 配置 Jupyter not ...