GWT上傳

客戶端:

class FileUploadForm extends FormPanel{

   private FileUpload fileUpload;

   public FileUploadForm(){
       setEncoding(FormPanel.ENCODING_MULTIPART);
       setMethod(FormPanel.METHOD_POST);
       VerticalPanel holder = new VerticalPanel();
       fileUpload = new FileUpload();
       fileUpload.setName("file");
       fileUpload.setWidth(300);
       holder.add(fileUpload);
 }

  public String getFileName(){
      return fileUpload.getFilename();
  }
}

  上面的代碼是構造一個簡單的文件上傳的Panel。

 

  使用FileUploadForm:

  (1):設置Action:fileUploadForm.setAction(String url);//

  (2):上傳前的事件:fileUploadForm.addSubmitHandler(SubmitHandler handler);//

  (3):上傳完成事件:fileUploadForm.addSubmitCompleteHandler(SubmitCompleteHandler handler);//

   如果服務器端用諸如out.print寫入數據返回到客戶端,在SubmitCompleteHandler裏可以用如下方式獲得。

//獲取輸出流裏的數據
String result = event.getResults();
HTML html = new HTML(result);
result = html.getText();

  (4):執行上傳操作:fileUploadForm.submit();

 

  服務端:

ServletFileUpload upload = new ServletFileUpload();
FileItemIterator iter= upload.getItemIterator(req);
while(iter.hasNext()){
 FileItemStream item = iter.next();
 InputStream in = item.openStream();//打開上傳的文件流
}
 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章