熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

用JSP寫出FileUpload上傳小程序

2013-11-23 19:29:54  來源: Java核心技術 

  void write(JavaioFile file)
    A convenience method to write an uploaded item to disk

  而這裡的是String!!!

  Constructor Summary
    File(File parent String child)
    Creates a new File instance from a parent abstract pathname and a child pathname string
    File(String pathname)
    Creates a new File instance by converting the given pathname string into an abstract pathname
    File(String parent String child)
    Creates a new File instance from a parent pathname string and a child pathname string
    File(URI uri)
    Creates a new File instance by converting the given file: URI into an abstract pathname
    我修改了這句為兩句:

  File writeFile=new File(F:\\publicname);
    fiwrite(writeFile);
    這樣這個上傳程序終於可以工作了!(一會有源代碼上傳一個文件的)

  還有這裡的 都是(輸入法問題)如果粘貼過來要一個個修改不知道怎麼回事情網上的代碼總是有一點讓人難以琢磨的錯誤而不能運行!所以網上的東西只能參考理解之後再自己寫!

  其它過程:

  upload
    B 端的上傳
    )

  upload目錄:
    <form action=getUploadJSP enctype=multipart/formdata method=POST>
    這裡ocj 的目錄和 tomcat 的目錄可是服務器硬盤上真實存在的任意目錄!
    )upload method
    請輸入要上傳的文件:<input type=FILE name=file/>
    get
    S端讀取:
    )requestgetInputStream 進行分析
    public ServletInputStream getInputStream() throws javaioIOException

  )Jakarta 通用庫

  download

  temp sql:
    create table upload(
    name varchar() primary key not null
    content clob );
    commit;
    server 端接受文件上傳 下載commonsfileupload
    說明:
    Commons是 Apache開放源代碼組織中的一個Java子項目該項目主要涉及一些開發中常用的模塊例如文件上傳命令行處理數據庫連接池 XML配置文件處理等這些項目集合了來自世界各地軟件工程師的心血其性能穩定性等方面都經受得住實際應用的考驗有效地利用這些項目將會給開發帶來 顯而易見的效果Fileupload就是其中用來處理HTTP文件上傳的子項目本文主要介紹如何使用Fileupload來處理浏覽器提交到服務器的 文件信息

  PS:一般下載的*jar 文件都是拷貝到Tomcat \common\lib裡面

    另外 由於Fileupload子項目同時要用到另外一個項目commonsBeanutils所以必須下載Beanutils並將解壓後的文件commonsbeanutilsjar拷貝到{$TOMCAT}/common/lib目錄下

  Reference:

  我寫的參考源代碼:


    //inputuploadjsp

  <%@ page contentType=text/html;charset=Big%>
    <html>
    <head>
    <meta httpequiv=ContentType content=text/html; charset=Big>
    <title>inputUpload</title>
    </head>
    <body>
    <%
    requestsetCharacterEncoding(big);
    %>
    <form action=getUploadjsp enctype=multipart/formdata method=POST >
    請輸入要上傳的文件:<input type=FILE name=file/>
    <input type=submit value=確定上傳/>
    </form>

  </body>
    </html>

  //getUploadjsp

  <%@ page contentType=text/html;charset=GBK%>

  <%@ page import=javautil*%>

  <%@ page import=javaio*%>

  <%@ page import=monsfileupload*%>

  <%@ page import=monsbeanutils*%>

  getUploadjsp

  <%

  DiskFileUpload dfu = new DiskFileUpload();

  // 設置允許用戶上傳文件大小單位:字節

  dfusetSizeMax();

  // maximum size that will be stored in memory?

  // 設置最多只允許在內存中存儲的數據單位:字節

  dfusetSizeThreshold();

  // 設置一旦文件大小超過getSizeThreshold()的值時數據存放在硬盤的目錄

  dfusetRepositoryPath(f:\\public);

  //開始讀取上傳信息

  try{

  List fileItems = dfuparseRequest(request);

  %>

  <%

  // 依次處理每個上傳的文件

  Iterator i = erator();

  String name =null;

  long size=;

  while (ihasNext())

  {

  FileItem fi = (FileItem) inext();

  //忽略其他不是文件域的所有表單信息

  if (!fiisFormField()) {

  name = figetName();

  size = figetSize();

  if((name==null||nameequals()) && size==)

  continue; }

  name=figetName();

  size=figetSize();

  name = namereplace(:_);

  name = namereplace(\\_);

  File writeFile=new File(F:\\publicname);

  fiwrite(writeFile);

  }

  }catch(FileUploadException fue)

  { fueprintStackTrace();}

  %>


From:http://tw.wingwit.com/Article/program/Java/hx/201311/26969.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.