准备工作:
相关文件下载:
1.commons-io-1.2.jar:http://apache.justdn.org/jakarta/commons/io/binaries/commons-io-1.2.zip
2.commons-fileupload-1.1.1.jar:ftp://justdn.org/apache/jakarta/commons/fileupload/binaries/commons-fileupload-1.1.1.zip
servlet代码:
/**
* Class Description:
*/
public class UploadFileServlet extends HttpServlet {
private String uploadPath = "C:\\upload\\"; // 上传文件的目录
private String tempPath = "C:\\upload\\tmp\\"; // 临时文件目录
static String filename = "0";
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
{
String uploadPath = "C:/temp2/"; // 用于存放上传文件的目录
String tempPath = "C:/temp"; // 用于存放临时文件的目录
boolean isMultipart = FileUpload.isMultipartContent(request);
if (!isMultipart) {
return;
}
try {
DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setSizeThreshold(4096);
factory.setRepository(new File(tempPath));
// Create a new file upload handler
FileUpload upload = new FileUpload(factory);
// Set overall request size constraint
upload.setSizeMax(1263509131 * 1024);
List items = upload.parseRequest(request);
Iterator iter = items.iterator();
while (iter.hasNext()) {
FileItem item = (FileItem) iter.next();
// 忽略其他不是文件域的所有表单信息
if (!item.isFormField()) {
String name = item.getName();
name = name.substring(
name.lastIndexOf(File.separator) + 1, name
.length());
filename = (Integer.parseInt(filename) + 1) + "";
long size = item.getSize();
if ((name == null || name.equals("")) && size == 0)
continue;
item.write(new File(uploadPath + filename));// 这里的路径你可以改成你感兴趣的地方
}
}
} catch (Exception e) {
// 可以跳转出错页面
e.printStackTrace();
}
response.sendRedirect("index.html");
}
}
}
web.xml代码
<servlet>
<servlet-name>Upload</servlet-name>
<servlet-class>
UploadFileServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Upload</servlet-name>
<url-pattern>/fileupload</url-pattern>
</servlet-mapping>
html页面:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>
<BODY>
<form action="fileupload" method="post"
enctype="multipart/form-data" name="form1">
<input type="file" name="file">
<input type="submit" name="Submit" value="upload">
</form>
</BODY>
</HTML>
将上面部署在一个web应用中就OK!
分享到:
相关推荐
通过阅读这篇博客,开发者可以更好地理解如何在Java Web应用中使用`commons-fileupload`组件实现安全、高效的文件上传功能。 总结起来,`commons-fileupload`组件是处理HTTP文件上传的利器,它简化了文件上传的流程...
在Java Web开发中,文件上传是一项常见的功能,Apache Commons FileUpload库为开发者提供了方便、灵活的文件上传解决方案。本教程将深入讲解如何使用`commons-fileupload`库处理中文乱码问题以及实现多文件上传。 ...
Apache Commons FileUpload和Commons IO两个库是Java中处理文件上传的关键组件,它们为SpringMVC和MyBatis这样的框架提供了强大的支持。本篇文章将深入探讨这两个库以及它们在图片处理中的作用。 首先,`commons-...
总的来说,`commons-fileupload-1.3.3.jar` 和 `commons-io-2.5.jar` 这两个库为Java开发者提供了强大而便捷的文件上传解决方案,它们简化了原本复杂的过程,使开发者可以更专注于业务逻辑,而不是底层的文件处理...
**Commons-Fileupload组件** Commons-Fileupload是Apache Commons项目的一个子项目,专门设计用于处理Servlet容器中的文件上传请求。它提供了一套API,使得开发者可以方便地解析HTTP请求中的多部分(multipart)...
综上所述,这些组件的结合使用,可以构建一个健壮的、能够处理文件上传以及与数据库交互的Java Web应用,是Java开发中常见的技术栈配置。开发者在实际项目中,可以通过这些工具来提升应用的稳定性和效率。
3. **解析请求**:使用Commons FileUpload库解析请求,获取上传的文件项。 4. **保存文件**:从文件项中获取输入流,然后写入到服务器的某个目录,完成文件上传。 四、文件下载步骤 1. **处理请求**:Servlet接收到...
【使用commons-fileupload上传文件】 Apache Commons FileUpload是Apache组织的一个子项目,专注于处理HTTP文件上传。这个组件提供了一个简洁的API,使得开发者能够轻松地在Java应用中处理由浏览器发送的多部分...
在使用`commons-fileupload-1.3.2.jar`处理文件上传时,通常会配合`commons-io-2.5.jar`来完成一些辅助操作,例如读取上传文件的内容、检查文件类型、移动文件到目标位置等。通过这两个库的组合,开发者能够方便地在...
### 使用commons-fileupload-1.0进行文件上传的实例及乱码处理 #### 一、commons-fileupload简介 `commons-fileupload`是Apache Commons项目下的一个子项目,它提供了强大的文件上传功能,允许用户轻松地将文件从...
总的来说,Apache Commons FileUpload 1.3.3是Java Web开发中处理文件上传不可或缺的工具,结合Apache Commons IO,可以构建出高效、安全的文件上传功能。这两个库都是Java生态系统的重要组成部分,大大提高了开发...
FileUpload组件的核心功能是解析HTTP请求中的多部分数据(Multipart Form Data),这是HTML表单中用于上传文件的标准格式。它的工作原理如下: 1. **解析请求**:当用户通过HTML表单提交包含文件的请求时,服务器端...
"commons-fileupload-1.3.1.jar" 是Apache Commons FileUpload项目的版本1.3.1的Java档案文件,这个库专门设计用于处理HTTP协议中的文件上传功能。在Web开发中,尤其是基于Java的服务器端应用程序,文件上传是常见的...
本文将详细介绍如何使用 Commons-FileUpload 实现文件的上传和下载功能。 #### 一、环境搭建与依赖引入 1. **Maven 依赖**: - 在项目的 `pom.xml` 文件中添加 Commons-FileUpload 和 Commons-Io 的依赖。 ```...
总之,Apache Commons FileUpload是Java Web开发中处理文件上传不可或缺的工具,它提供了高效、灵活且安全的文件上传解决方案。通过理解和熟练运用这个库,开发者可以轻松地在自己的应用中实现复杂的文件上传功能。
Apache Commons FileUpload是Java中处理文件上传的一个强大库,它简化了这一过程。本教程将详细介绍如何利用commons-fileupload实现文件上传功能,并提供一个简单的实例。 **一、Apache Commons FileUpload简介** ...
《Apache Commons FileUpload组件详解》 Apache Commons FileUpload是一个用于处理HTTP请求中多部分数据的Java库,尤其在上传文件时极为有用。标题中的"commons-fileupload-1.4-bin.zip"表明这是一个包含Apache ...
另一方面,Apache Commons-Fileupload是另一个广泛使用的Java文件上传库。"commons-fileupload-1.2.2.jar"是该库的版本1.2.2的jar文件。这个库提供了更底层的文件上传处理,允许开发者更精细地控制上传过程。与...
common-fileupload组件是apache的一个开源项目之一,可以从http://jakarta.apache.org/commons/fileupload/下载。该组件简单易用,可实现一次上传一个或多个文件,并可限制文件大小。 -下载后解压zip包,将commons-...
Apache Commons FileUpload与Apache Commons IO是Java开发中用于处理文件上传功能的重要库。这两个组件提供了高效、灵活且易于使用的API,使得在Web应用程序中接收和处理用户上传的文件变得非常简单。 **Apache ...