1. 从www.apache.org的common项目下搞到commons-fileupload.jar 和commons-io.jar,导入项目。
2. jsp页面中,form的属性设置要求为:
<form action="uploadServlet" method="post" enctype="multipart/form-data">
其中,post和multipart/form-data要求必须指定。
3. 创建处理请求的Servlet:
<span style="font-size: medium;">DiskFileItemFactory factory = new DiskFileItemFactory();
// 获得项目根路径
String path = request.getRealPath("/");
// 设置缓存路径
factory.setRepository(new File(path));
// 设置文件缓存到硬盘的大小临界值
factory.setSizeThreshold(1024 * 1024);
ServletFileUpload servletFileUpload = new ServletFileUpload(factory);
try {
// 指定解析request
List<FileItem> list = (List<FileItem>)
servletFileUpload.parseRequest(request);
for (FileItem item : list)
{
// 非文件的表单字段
if (item.isFormField() == true){
String filedName = item.getFieldName(); // 获得字段名
String value = item.getString("UTF-8"); // 获得字段值
System.out.println("fieldName=" + filedName);
System.out.println("value=" + value);
}else{ //文件表单字段
String fieldName = item.getFieldName(); // 获得字段名
String value = item.getName(); // 获得文件名
System.out.println("fieldName=" + fieldName);
System.out.println("file path=" + value);
// 处理浏览器兼容问题处理
int index = value.lastIndexOf("\\");
String fileName = value.substring(index + 1);
item.write(new File(path, fileName));
}
}
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException(e);
}</span>
分享到:
相关推荐
在使用 Apache Commons FileUpload 进行文件上传之前,你需要确保以下组件已经准备就绪: 1. **引入依赖**:首先,你需要下载并添加 `org.apache.commons.io` 和 `log4j` 的 JAR 包到你的项目类路径中。在本例中,`...
`org.apache.commons.fileupload.DiskFileUpload` 是 Apache Commons FileUpload 模块中的一个类,主要用于处理 HTTP 请求中的文件上传。这个类实现了基于磁盘的文件上传存储策略,当上传文件大小超过内存阈值时,它...
在创建一个基于Apache Commons FileUpload的文件上传组件时,通常会包含以下步骤: 1. 创建`DiskFileItemFactory`实例。 2. 使用工厂创建`ServletFileUpload`实例,设置大小限制。 3. 解析`HttpServletRequest`对象...
本实现抽取了apache commons.fileupload的最基本代码,组合成一个简单的文件上传组件,对parseRequest方法进行了改进,对于文件,直接存储到指定的上传目录,加快了上传速度。使用本程序时,注意上传端的参数设置,...
标题 "org.apache.commons.fileupload" 指的是Apache Commons FileUpload组件,这是一个Java库,专门用于处理HTTP协议中的文件上传功能。Apache Commons是Apache软件基金会的一个项目,它提供了许多Java编程中常用的...
项目中需要 org.apache.commons.io.IOUtils的可以下载此包,fileupload组件依赖的commons-io组件
Apache Commons 是一个由Apache软件基金会开发的Java库项目,它提供了大量的可重用Java组件,极大地简化了开发人员的工作。这个"org.apache.commons.jar"包是Apache Commons项目的一部分,其中包含了该目录下的一...
在本教程中,我们将深入探讨如何使用SwfUpload与`org.apache.commons.fileupload`库来实现文件上传功能。 Apache Commons FileUpload 是一个Java库,专门用于处理HTTP请求中的多部分数据,也就是通常用于文件上传的...
首先,Commons FileUpload组件的核心功能是解析HTTP请求中的`multipart/form-data`内容,这是HTML表单上传文件时通常使用的编码方式。它能够识别并提取每个部分的数据,包括文件内容和其他非文件数据,如文本字段。 ...
文件上传组件commons-fileupload用户指南文件上传组件commons-fileupload用户指南
本篇将详细讲解使用FileUpload组件实现JSP文件上传所需的步骤和关键知识点。 首先,`fileUpload组件`是Apache Commons项目的一个子项目,它提供了一套API,可以方便地处理HTTP请求中的多部分数据,即文件上传。在...
FileUpload组件的核心功能是解析HTTP请求中的多部分数据(Multipart Form Data),这是HTML表单中用于上传文件的标准格式。它的工作原理如下: 1. **解析请求**:当用户通过HTML表单提交包含文件的请求时,服务器端...
使用fileupload组件实现文件上传功能 FileUpload组件是Apache提供的一款文件上传组件,能够帮助我们轻松实现文件上传功能。下面我们将详细介绍使用FileUpload组件实现文件上传功能的步骤和要点: 首先,需要引入两...
使用 Apache Commons Fileupload 文件上传组件需要两个类库文件:commons-fileupload-1.2.2.jar和commons-io-1.4.jar。 2. 下载和安装组件 下载 commons-fileupload-1.2.2.jar 和 commons-io-1.4.jar 文件,并将其...
本文将详细解析"commons-fileupload组件上传问题",并结合提供的资源来探讨如何解决这类问题。 首先,Apache Commons FileUpload组件允许我们在Servlet环境中处理multipart/form-data类型的表单数据,这是用来上传...
Apache Commons FileUpload与Apache Commons IO是Java开发中用于处理文件上传功能的重要库。这两个组件提供了高效、灵活且易于使用的API,使得在Web应用程序中接收和处理用户上传的文件变得非常简单。 **Apache ...
本教程将深入讲解如何使用Java Servlet、Apache Commons IO库(版本2.4)以及Apache Commons FileUpload库(版本1.3)来实现这一功能。 一、Apache Commons IO与FileUpload库介绍 Apache Commons IO是一个Java库,...
在Web开发中,Apache Commons 的组件被广泛使用,尤其是在 JSP+Servlet 的学习,以及基于 Spring(SSM)、Struts(SSH)等框架的应用开发中。 Apache Commons 中包含多个模块,每个模块都专注于特定的功能领域,...
【基于commons-fileupload组件的上传下载】是一种在J2EE环境下处理...总的来说,Apache Commons FileUpload组件简化了在JSP和Servlet中处理文件上传和下载的任务,但开发者仍需关注安全性、性能优化和异常处理等方面。