`
whiteotiger
  • 浏览: 9976 次
  • 性别: Icon_minigender_1
  • 来自: 南通
最近访客 更多访客>>
社区版块
存档分类
最新评论

java上传组件commons-fileupload的一些使用方法

 
阅读更多

http://www.apache.org,下载commons-fileupload-1.2.1.jar包,并把这个包加到工程中,以下是记录这个上传组件的一些使用方法。

html测试页面,实现上传两个文件,并填写四个参数。

 

<form action="../FileServlet" enctype="multipart/form-data"method="post" >
 <dt>本人名称:</dt>
 <dd><input type="text" name="name"  class="file-input" />dd>
 <dt>银行账户:</dt>
 <dd>< <input type="text" name="account"  class="file-input" /></dd>
 <dt>开户银行:</dt>
 <dd>< <input type="text" name="bank"  class="file-input" /><dd>
 <dt>身份证号:</dt>
 <dd> <input type="text" name="number"  class="file-input" /></dd>
 <dt>身份证照片:</dt>
 <dd><input type="file" name="photo"  class="file-input" /></dd>
 <dt>银行卡照片:</dt>
 <dd> <input  type="file" name="card"  class="file-input" /> </dd>
</form> 

 

在上传文件的时候,form表单的entype必须是multipart/form-data,这种情况下,在台通过request.getParameter();方法就无法获得参数,返回的都是空值。所以这里就不能再使用getParameter()这个方法,下面介绍一下commons-fileupload里的一些方法。

首先把请求消息实体中的每一个项目封装成单独的DiskFileItem(FileItem的实现)对象,这是通过使用实现了org.apache.commons.fileupload.FileItemFactory接口的org.apache.commons.fileupload.DiskFileItemFactory来完成的,当上传的文件比较小时,可直接保存在内存中,这样速度比较快,当文件较大时使用临时文件缓存。代码如下

FileItemFactory factory= new DiskFileItemFactry();

ServletFileUpload upload = new ServletFileUpload(factory); //获得ServletFileUpload 对象upload

List<FileItem> listItem = upload.parseRequest(request); //解析request,把每个项目封装成单独的FileItem

//遍历listItem

for (FileItem item : listItem) {
if(!item.isFormField()){//说明这个项目是个文件,上传到服务器
String fileName = item.getName();//这个名字文件的完整路径名
String fileUploadName = fileName.substring(fileName
.lastIndexOf("\\") + 1);//获得文件的名字,不包含路径
item.write(new File(path, fileUploadName));//写入磁盘,path是文件的写入路径
}else{//这个项目就是一个参数可以获取

 

String filed = item.getFieldName();//获得这个参数名
if (filed.equals("bank")) {//根据判断获得参数值,并赋给已声明的变量
bank = item.getString();
}
if (filed.equals("number")) {
number = item.getString();

}
if (filed.equals("account")) {
account = item.getString();

}

 

}

}

这样,即上传了文件,也获取到了页面参数。

 

分享到:
评论

相关推荐

    commons-fileupload-1.3.3.jar commons-io-2.5.jar

    总的来说,`commons-fileupload-1.3.3.jar` 和 `commons-io-2.5.jar` 这两个库为Java开发者提供了强大而便捷的文件上传解决方案,它们简化了原本复杂的过程,使开发者可以更专注于业务逻辑,而不是底层的文件处理...

    commons-fileupload组件上传问题

    本篇文章将深入探讨这个组件的使用方法以及可能出现的问题。 首先,我们来看`demo.jsp`和`upload.jsp`这两个文件。`demo.jsp`通常是展示上传文件表单的页面,而`upload.jsp`则是处理文件上传请求的后端代码。在`...

    commons-fileupload组件和commons-io组件

    在实际使用中,Commons-Fileupload通常与Commons-IO结合,实现完整的文件上传流程。例如,当文件上传完成后,我们可以使用Commons-IO的工具类将文件移动到目标位置,或者进行进一步的处理。这两个组件极大地简化了...

    commons-fileupload.jar和commons-io.jar

    Apache Commons FileUpload和Commons IO两个库是Java中处理文件上传的关键组件,它们为SpringMVC和MyBatis这样的框架提供了强大的支持。本篇文章将深入探讨这两个库以及它们在图片处理中的作用。 首先,`commons-...

    commons-fileupload-1.3.3&commons-fileupload-1.3.3架包和代码.rar

    综上所述,这些组件的结合使用,可以构建一个健壮的、能够处理文件上传以及与数据库交互的Java Web应用,是Java开发中常见的技术栈配置。开发者在实际项目中,可以通过这些工具来提升应用的稳定性和效率。

    commons-fileupload-1.3.2.jar和commons-io-2.5.jar

    在使用`commons-fileupload-1.3.2.jar`处理文件上传时,通常会配合`commons-io-2.5.jar`来完成一些辅助操作,例如读取上传文件的内容、检查文件类型、移动文件到目标位置等。通过这两个库的组合,开发者能够方便地在...

    java 上传 SmartUpload&commons-fileupload

    本主题将深入探讨两种常见的Java上传组件——SmartUpload和Commons-Fileupload。 SmartUpload是一个强大的Java上传组件,由Julien DROUET开发,它为JSP和Servlet提供了方便的文件上传功能。SmartUpload提供了一套...

    java+servlet+commons-io-2.4.jar+commons-fileupload-1.3.jar实现文件的上传与下载

    本教程将深入讲解如何使用Java Servlet、Apache Commons IO库(版本2.4)以及Apache Commons FileUpload库(版本1.3)来实现这一功能。 一、Apache Commons IO与FileUpload库介绍 Apache Commons IO是一个Java库,...

    commons-fileupload-1.3.3-bin

    Apache Commons是Apache软件基金会的一个项目,致力于提供高质量的Java组件,而FileUpload就是其中的一个组件。 在Web开发中,文件上传通常是一个复杂的过程,涉及到多个步骤和潜在的问题,如文件大小限制、多部分...

    commons-fileupload及源码

    总结起来,Apache Commons FileUpload是一个强大的、高度可配置的文件上传组件,它简化了Java Web应用中处理文件上传的复杂性。通过结合使用`commons-fileupload-1.3.1.jar`和`commons-fileupload-1.3.1-sources.jar...

    commons-fileupload-1.3.1.jar

    "commons"标签表明这个库是Apache Commons项目的一部分,旨在提供通用的、可重用的Java组件。 在"commons-fileupload"这个子项目中,核心概念包括: 1. **FileItem**: 这是库中最基础的类,代表一个上传的文件或...

    struts2文件上传组件commons-fileupload-1.2.1.jar

    Apache Commons FileUpload是Java的一个组件,专门用于处理HTTP请求中的多部分数据,即文件上传。在Struts2中,这个库允许用户在表单中上传文件到服务器。1.2.1版本是在2009年发布的,提供了稳定且功能丰富的文件...

    commons-fileupload-1.3.2.jar

    总之,Apache Commons FileUpload是Java Web开发中处理文件上传不可或缺的工具,它提供了高效、灵活且安全的文件上传解决方案。通过理解和熟练运用这个库,开发者可以轻松地在自己的应用中实现复杂的文件上传功能。

    commons-fileupload-1.2.jar和commons-io-1.3.2.jar

    第1个上传组件commons-fileupload =============commons-fileupload ================ common-fileupload组件是apache的一个开源项目之一,可以从http://jakarta.apache.org/commons/fileupload/下载。该组件简单...

    commons-fileupload-1.4-bin.zip

    下面我们将深入探讨FileUpload组件的核心概念和使用方法: 1. **组件结构**:FileUpload主要由两个核心组件构成:`DiskFileItemFactory`和`ServletFileUpload`。前者负责创建`FileItem`对象,后者则负责解析请求并...

    commons-fileupload-1.0上传组件使用实例.

    ### 使用commons-fileupload-1.0进行文件上传的实例及乱码处理 #### 一、commons-fileupload简介 `commons-fileupload`是Apache Commons项目下的一个子项目,它提供了强大的文件上传功能,允许用户轻松地将文件从...

    Java Web上传组件使用:Commons-fileupload

    本文将深入探讨如何使用Commons FileUpload组件来处理文件上传。 Apache Commons FileUpload是Apache Commons项目的一部分,专门设计用于处理HTTP请求中的多部分数据,即通常在HTML表单中用于文件上传的数据格式。...

    commons-fileupload-1.4 jar包.rar

    总结,Apache Commons FileUpload是Java Web开发中不可或缺的工具,它简化了文件上传的处理过程,提供了灵活的配置选项和强大的功能。理解并熟练运用这个组件,可以有效地提升开发效率,同时保证上传功能的安全和...

    commons-fileupload-1.2.1

    Apache Commons FileUpload是一个Java库,专门用于处理HTTP...总的来说,Apache Commons FileUpload是Java Web开发中不可或缺的工具,它极大地简化了文件上传的处理,使得开发者能够更专注于业务逻辑,而非底层细节。

    使用commons-fileupload上传文件

    【使用commons-fileupload上传文件】 Apache Commons FileUpload是Apache组织的一个子项目,专注于处理HTTP文件上传。这个组件提供了一个简洁的API,使得开发者能够轻松地在Java应用中处理由浏览器发送的多部分...

Global site tag (gtag.js) - Google Analytics