`
jackthink
  • 浏览: 7680 次
  • 性别: Icon_minigender_1
  • 来自: 台州
最近访客 更多访客>>
社区版块
存档分类
最新评论

上传文件组件

    博客分类:
  • JSP
阅读更多
   在很多的jsp 项目中,我们要上传附件,如很多的BBS也有这样的功能,邮件也一样,相信大家已非常熟悉了,这里就介绍他是怎么实现的;
这里我们选择第三方组件,你可以选择:commons-fileupload 或jspSmartUpload
这里我们选择apache的commons-fileupload;

   这个组件的包你可以在:http://jakarta.apache.org/site/downloads/下载
可以在左边的导航中找到Commons然后在里面找到commons-fileupload
在用这个包的同时我们还用到了apache的io包,它同样在Commons里可以找到;


下面是书上的一个实例代码:
    upload.jsp
<%@ page language="java" contentType="text/html;charset=GBK"
    pageEncoding="GBK"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<title>Insert title here</title>
</head>
<body>

  common file upload 上传实例<br>
  <form method="post" action="FileUpload" ENCTYPE="multipart/form-data">
  文件:<input type="file" name="file"/>
  <input type="submit" value="上传" name="submit">
  </form>


</body>
</html>



下面是一个处理的servlet
  FileUpload.java
package servlet;

import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Iterator;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

public class FileUpload extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    public FileUpload() {
        super();
    }

	protected void doGet(HttpServletRequest request, HttpServletResponse response) 
	throws ServletException, IOException {
		this.doPost(request, response);
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response)
	throws ServletException, IOException {
		boolean isMultipart=ServletFileUpload.isMultipartContent(request);
		if(isMultipart){
			FileItemFactory factory=new DiskFileItemFactory();
			ServletFileUpload upload=new ServletFileUpload(factory);
			Iterator items;
			
			
			try{
				items=upload.parseRequest(request).iterator();
				while(items.hasNext()){
					FileItem item=(FileItem)items.next();
					if(!item.isFormField()){
						String name=item.getName();
						String fileName=name.substring(name.lastIndexOf('\\')+1, name.length());
						String path=request.getRealPath("file")+
						File.separatorChar+fileName;
						File uploadFile=new File(path);
						item.write(uploadFile);
						
						response.setContentType("text/html");
						response.setCharacterEncoding("gb2312");
						PrintWriter out=response.getWriter();
						out.print("<font size='12'>上传文件为"+name+"<br>");
						out.print("保存地址为"+path+"<br>");
					}
				}
				
			}catch(Exception e){
				e.printStackTrace();
			}
			
		}
	}

}

分享到:
评论

相关推荐

    微信小程序封装上传文件组件

    在封装上传文件组件时,我们需要考虑以下几个关键步骤: 1. **选择图片**:通过`wx.chooseImage`接口,限制用户选择的图片数量,可以是单张或多张,根据实际需求来设定。 ```javascript wx.chooseImage({ count: ...

    功能强大的文件上传组件

    【标题】"功能强大的文件上传组件"涉及到的核心技术是HTML5中的文件上传API,这是一个现代Web应用中不可或缺的功能,尤其在交互丰富的网站和应用程序中。HTML5的File API提供了更灵活、更强大的文件处理能力,使得...

    WEBOFFICE组件jspsmart上传文件组件源码

    【WEBOFFICE组件jspsmart上传文件组件源码】是一个专用于在Web环境中实现文件上传功能的组件。这个组件通常被集成到基于Java的Web应用程序中,为用户提供了一个便捷的方式来上传各种类型的文件到服务器。WEBOFFICE是...

    jspSmartUpload上传文件组件

    **jspSmartUpload上传文件组件详解** `jspSmartUpload`是一个基于Java的文件上传组件,它在JSP(Java Server Pages)环境中提供了强大的文件上传功能。这个组件为开发者提供了方便、安全且灵活的方式来处理用户通过...

    无刷新上传文件组件 .net

    无刷新上传文件组件在.NET框架下,特别是在C#编程环境下,是一种提高用户体验的重要技术。它允许用户在不重新加载整个网页的情况下,实现文件的上传,极大地优化了交互流程。这种技术主要依赖于Ajax(Asynchronous ...

    上传文件组件SmartUpload

    上传文件组件SmartUpload

    上传文件组件SmartUpload2

    上传文件组件SmartUpload

    ASP.NET上传文件组件集合

    ASP.NET上传文件组件是开发Web应用时不可或缺的一部分,它们允许用户通过网页将本地文件上传到服务器。在ASP.NET环境中,有多种实现文件上传的方式和组件,例如“bcbbs.net_UploadDemo”和“NeatUpload-1.2.30”。这...

    jsp 文件 上传 组件

    本篇文章将深入探讨如何在JSP中实现文件上传功能,并介绍相关的组件和最佳实践。 一、文件上传的原理 文件上传是用户通过Web表单提交文件到服务器的过程。HTTP协议的POST请求可以携带文件数据,通常我们需要设置...

    JAVAWeb文件上传组件

    以上就是关于“JAVAWeb文件上传组件”的基本介绍,包括Apache Commons FileUpload和Commons IO的作用以及它们在Struts2框架中的使用。通过理解这些知识点,开发者可以有效地实现在Java Web应用中处理文件上传的需求...

    使用fileupload组件实现文件上传功能

    使用fileupload组件实现文件上传功能 FileUpload组件是Apache提供的一款文件上传组件,能够帮助我们轻松实现文件上传功能。下面我们将详细介绍使用FileUpload组件实现文件上传功能的步骤和要点: 首先,需要引入两...

    HTTP文件上传组件

    5、支持大文件上传,一次可以上传多个文件,上传时有详细状态显示(单个文件进度,整体进度,传输速率,剩余时间等)。 6、支持各种代理(HTTP, Socket4, Socket5等) 7、客户端可以绑定表单变量,服务端并可以接收...

    Ext2.0 文件上传组件

    "Ext2.0 文件上传组件"是一个用于Web应用程序的组件,它允许用户在浏览器中方便地上传文件。这个组件基于Ext JavaScript库的2.0版本,Ext是一个强大的前端开发框架,提供了丰富的用户界面组件和数据管理功能。在本文...

    Vuejs文件上传组件多文件上传

    本篇将详细介绍Vue.js中实现多文件上传的相关知识点,以及如何使用`vue-upload-component`这个开源组件来帮助我们实现这一功能。 首先,文件上传组件通常需要处理以下几个关键点: 1. **多文件选择**:用户可能...

    一个简单实用的ASP文件上传组件

    ASP文件上传组件是一种在Web应用中处理用户上传文件的关键技术,尤其对于动态网站而言,它允许用户方便地将数据文件(如文档、图片、音频、视频等)上传至服务器。在本例中,"AN-Upload"是这样一个组件,它采用ASP...

    文件上传组件

    文件上传组件是网页应用中常见的功能模块,它允许用户选择本地文件并将其上传到服务器。在JavaScript(JS)中实现文件上传组件,涉及到的技术点主要包括HTML5的File API、Ajax异步请求、 formData对象以及前端与后端...

    文件上传组件的比较

    在IT领域,文件上传组件是Web应用程序中不可或缺的一部分,它允许用户向服务器传输各种大小的文件。本篇文章将深入探讨并比较三个常见的文件上传组件:Cos、FileUpload和SmartUpload,基于它们的性能表现和适用场景...

    大文件上传组件

    在IT行业中,大文件上传组件是一个非常重要的工具,特别是在web应用程序和云计算环境中。它解决了由于文件大小限制导致的传统上传方式的不便,使用户能够方便地上传GB级别的大型文件。本篇将围绕大文件上传组件这一...

    最简单的ASP无组件上传文件程序

    在ASP中,无组件上传文件通常是指不依赖第三方控件或组件,仅使用内置的ASP功能来实现文件上传功能。这有助于减少服务器的资源占用,并简化部署过程。 在ASP中实现无组件上传文件,主要涉及以下几个核心知识点: 1...

Global site tag (gtag.js) - Google Analytics