博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
common-fileupload上传文件
阅读量:5275 次
发布时间:2019-06-14

本文共 1521 字,大约阅读时间需要 5 分钟。

文件上传在web应用中非常普遍,要在jsp环境中实现文件上传功能是非常容易的,因为网上有许多用java开发的文件上传组件,本文以commons-fileupload组件为例,为jsp应用添加文件上传功能。

common-fileupload组件是apache的一个开源项目之一,可以从下载。用该组件可实现一次上传一个或多个文件,并可限制文件大小。

下载后解压zip包,将commons-fileupload-1.0.jar复制到tomcat的webapps\你的webapp\WEB-INF\lib\下,目录不存在请自建目录。

新建一个servlet: Upload.java用于文件上传:

import java.io.*;   import java.util.*;   import javax.servlet.*;   import javax.servlet.http.*;   import org.apache.commons.fileupload.*;   public class Upload extends HttpServlet {     private String uploadPath = "F:\\upload\\"; // 上传文件的目录    private String tempPath = "F:\\upload\\tmp\\"; // 临时文件目录     public void doPost(HttpServletRequest request,  HttpServletResponse response) throws IOException, ServletException {         try {           DiskFileUpload fu = new DiskFileUpload();       // 设置最大文件尺寸,这里是4MB           fu.setSizeMax(4194304);       // 设置缓冲区大小,这里是4kb           fu.setSizeThreshold(4096);       // 设置临时目录:           fu.setRepositoryPath(tempPath);       // 得到所有的文件:           List fileItems = fu.parseRequest(request);           Iterator i = fileItems.iterator();       // 依次处理每一个文件:       while(i.hasNext()) {               FileItem fi = (FileItem)i.next();           // 获得文件名,这个文件名包括路径:               String fileName = fi.getName();         // 在这里可以记录用户和文件信息         // ...         // 写入文件,暂定文件名为a.txt,可以从fileName中提取文件名:               fi.write(new File(uploadPath + "a.txt"));           }       } catch(Exception e) {       // 可以跳转出错页面       }   }   }

 

转载于:https://www.cnblogs.com/estellez/p/3955421.html

你可能感兴趣的文章