Common FileUpload组件的简单使用
FileUpload用于實現Web端的文件上傳。其主頁是:http://jakarta.apache.org/commons/fileupload/<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
?
使用方法:
1、將jar包放到lib目錄下
2、創建HTML頁面
3、創建服務器端組件
4、配置web.xml文件
HTML頁面:
<form action="fileupload" method="post"
enctype="multipart/form-data" name="form1">
? <input type="file" name="file">
? <input type="submit" name="Submit" value="upload">
</form>
創建服務器組件:
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import org.apache.commons.fileupload.*;
public class Upload extends HttpServlet ...{
?? String uploadPath = "C:\\upload\\"; // 用于存放上傳文件的目錄
?? String tempPath = "C:\\upload\\tmp\\"; // 用于存放臨時文件的目錄
??? public void doPost(HttpServletRequest request, HttpServletResponse response)
??????? throws IOException, ServletException
??? ...{
????? try ...{
??????? DiskFileUpload fu = new DiskFileUpload();
??????? fu.setSizeMax(4194304); // 設置最大文件尺寸,這里是4MB
??????? fu.setSizeThreshold(4096); // 設置緩沖區大小,這里是4kb
??????? fu.setRepositoryPath(tempPath); // 設置臨時目錄
??????? List fileItems = fu.parseRequest(request); // 得到所有的文件:
??????? Iterator i = fileItems.iterator();
??????? // 依次處理每一個文件:
??????? while(i.hasNext()) ...{
??????????? FileItem fi = (FileItem)i.next();
??????????? String fileName = fi.getName();// 獲得文件名,這個文件名包括路徑:
??????????? if(fileName!=null) ...{
??????????????? // 在這里可以記錄用戶和文件信息
??????????????? // 此處應該定義一個接口(CallBack),用于處理后事。
??????????????? // 寫入文件a.txt,你也可以從fileName中提取文件名:
??????????????? fi.write(new File(uploadPath + "a.txt"));
??????????? }
??????? }
??????? // 跳轉到上傳成功提示頁面
??? }
??? catch(Exception e) ...{
??????? // 可以跳轉出錯頁面
??? }
??? }
}
配置web.xml文件
<web-app>
??? <servlet>
<servlet-name>Upload</servlet-name>
??????? <servlet-class>Upload</servlet-class>
??? </servlet>
??? <servlet-mapping>
??????? <servlet-name>Upload</servlet-name>
??????? <url-pattern>/fileupload</url-pattern>
??? </servlet-mapping>
</web-app>
我們還可以在此基礎上做進一步的封裝,以便通過配置就可以使用組件。
轉載于:https://www.cnblogs.com/na57/archive/2006/03/02/340754.html
總結
以上是生活随笔為你收集整理的Common FileUpload组件的简单使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 走过求职的季节(2)-十月 龙卷风
- 下一篇: .NET 框架与多线程 (转载)