利用commons-fileupload实现文件上传
2009-10-25 21:58
615 查看
本来想自己实现文件上传的,但是这需要对流进行分析,我就先用了Apache Commons组件实现。因为这段时间很忙,只好等过一段时间好好研究下,自己实现一个不依赖于第三方jar包的文件上传。
用了fileuploa组件后,文件上传简单多了。这里采用Servlet实现文件上传,用到的第三方组建就只有一个fileupload和commos-io,commons-io是fileupload要用到的包.
1.处理上传操作的Servlet--FileUploadApache
2.web.xml的配置
3.upload-view.jsp
说明:这里有两个按钮,一个是采用Apache包,一个是不依赖,不依赖我还没实现,也是暂时还不想实现。
4.部署到Tomcat或其他Web容器就可以通过浏览器访问了。
用了fileuploa组件后,文件上传简单多了。这里采用Servlet实现文件上传,用到的第三方组建就只有一个fileupload和commos-io,commons-io是fileupload要用到的包.
1.处理上传操作的Servlet--FileUploadApache
package fileupload; import java.io.File; import java.io.IOException; import java.util.List; 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.FileUploadException; import org.apache.commons.fileupload.servlet.ServletFileUpload; public class FileUploadApache extends HttpServlet { private static final long serialVersionUID = 1L; private static final String REPOSITORY= "/home/zxj/apache/"; public FileUploadApache() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request,response); } @SuppressWarnings("unchecked") protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ServletFileUpload sfu = new ServletFileUpload(); try { List<FileItem> li = sfu.parseRequest(request); for(int i = 0; i < li.size(); i ++){ FileItem fi = li.get(i); if("uploadFile".equals(fi.getFieldName())){ fi.write(new File(REPOSITORY+fi.getName())); } } } catch (FileUploadException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } }
2.web.xml的配置
<servlet> <description>利用commons-fileupload包辅助完成文件上传</description> <display-name>FileUploadApache</display-name> <servlet-name>FileUploadApache</servlet-name> <servlet-class>fileupload.FileUploadApache</servlet-class> </servlet> <servlet-mapping> <servlet-name>FileUploadApache</servlet-name> <url-pattern>/FileUploadApache</url-pattern> </servlet-mapping>
3.upload-view.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!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=UTF-8"> <title>文件上传</title> <mce:script type="text/javascript"><!-- function doupload(submitbutton){ var name = submitbutton.name; var form = document.getElementById("fileupload"); form.action = name; form.submit; } // --></mce:script> </head> <body> <center> 实现文件上传 <form action="#" method="post" enctype="multipart/form-data" name="fileupload" id="fileupload"> 文件<input type="file" name="uploadFile"> <br/> <input type="submit" value="上传" onclick="doupload(this)" name="FileUploadNoDependency" title="无第三方依赖文件上传" style=" width : 48px;" mce_style=" width : 48px;"> <br/><input type="submit" value="上传" onclick="doupload(this)" name="FileUploadApache" title="利用commons-fileupload包辅助完成文件上传"> </form> <hr/> </center> </body> </html>
说明:这里有两个按钮,一个是采用Apache包,一个是不依赖,不依赖我还没实现,也是暂时还不想实现。
4.部署到Tomcat或其他Web容器就可以通过浏览器访问了。
相关文章推荐
- 利用 Commons-Fileupload 实现文件上传
- 利用commons-fileupload在servlet中实现文件上传
- 利用commons-fileupload实现文件的上传(源码)
- 利用 Commons-Fileupload 实现文件上传
- 在JSP环境中利用Commons-fileupload组件实现文件上传
- 利用commons-fileupload 实现文件上传终极版及commons-fileupload和commons-io包关系
- java利用commons-fileupload组件实现文件的上传与下载
- 利用commons-fileupload组件实现文件上传-实例
- 利用commons-fileupload组件实现文件上传-实例
- 利用commons-fileupload实现文件的上传(源码)
- 利用 Commons-Fileupload 实现文件上传
- 在JSP环境中利用Commons-fileupload组件实现文件上传
- 利用commons-fileupload 实现文件上传终极版及commons-fileupload和commons-io包关系
- 利用apache的Commons-fileupload和Ajax实现文件上传进度条
- 利用 Commons-Fileupload 实现文件上传
- java web 利用 commons-fileupload-1.2 实现文件上传 解决 中文乱码& 非文件属性的读取
- 利用commons-fileupload实现文件上传
- 利用commons-fileupload实现多个文件上传
- java web 利用 commons-fileupload-1.2 实现文件上传 解决 中文乱码& 非文件属性的读取
- 利用commons-fileupload实现文件的上传(源码)