自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

技術(shù)分享 Flex2.0文件上傳如何實現(xiàn)

開發(fā) 后端
本文向大家簡單介紹一下Flex2.0文件上傳問題,以前在Flex1.5的時候也做過,不過當初使用的是oreilly的cos.jar。Flex2.0和Flex1.5有哪些新特性呢,請看本文介紹。

本文和大家重點討論一下Flex2.0如何從零開始實現(xiàn)文件上傳,F(xiàn)lex2.0Release之后用oreilly的上傳包做了一下上傳,成功。于是回到apache的common-fileupload-1.1.1來研究上傳。

Flex2.0從零開始實現(xiàn)文件上傳

以前在Flex1.5的時候也做過,不過當初使用的是oreilly的cos.jar。而且Flex1.5的時候在as里面無法直接引用FileReference類,只能寫一個上傳的as文件編譯成swf文件,然后load這個swf文件來實現(xiàn)上傳。當初的體驗是:非常之不爽!

Flex2.0Release之后用oreilly的上傳包做了一下上傳,成功。于是回到apache的common-fileupload-1.1.1來研究上傳。終于有了成果。再加上一直以來游走于各個論壇,發(fā)現(xiàn)好多工友對Flex2.0實現(xiàn)文件上傳都很感興趣。于是決定花一點時間將自己的成果跟大家分享一下。

(PS:以下介紹的步驟都是傻瓜式的,初學(xué)者也能馬上上手?。?/p>

1.環(huán)境的安裝以及配置就不說了,網(wǎng)上很多地方可以找到。(我的是:JDK1.4.2,F(xiàn)lexBuilder2,F(xiàn)lex2SDK,Tomcat4.1,Eclips3.0.1,不過據(jù)說現(xiàn)在Flex2.0要使用RemoteObject的話需要安裝JDK1.5)。

2.首先在Eclips中創(chuàng)建一個tomcat工程,例如取名為FileUpload。

3.找到Flex2.0SDK安裝目錄,將flex.war拷貝出來更名為flex.rar。解開這個包。將里面的META-INF以及WEB-INF文件夾拷貝到Eclips的工作目錄(我的是:d:workspaces)----即剛才創(chuàng)建的FileUpload目錄下。

4.FlexBuilder2下創(chuàng)建一個新的工程。具體步驟如圖。

5.工程中引入common-fileupload-1.1.1.jar以及common-io-1.2.jar(沒有的話去http://www.apache.org下載)。

6.編寫上傳servletmyUpload.java代碼如下(上傳文件存放路徑為:d:upload):
 

  1. packagecom.fileupload;  
  2. importjava.io.File;  
  3. importjava.io.IOException;  
  4. importjava.util.Iterator;  
  5. importjava.util.List;  
  6. importjavax.servlet.ServletException;  
  7. importjavax.servlet.http.HttpServlet;  
  8. importjavax.servlet.http.HttpServletRequest;  
  9. importjavax.servlet.http.HttpServletResponse;  
  10.  
  11. importorg.apache.commons.fileupload.FileItem;  
  12. importorg.apache.commons.fileupload.FileUploadException;  
  13. importorg.apache.commons.fileupload.disk.DiskFileItemFactory;  
  14. importorg.apache.commons.fileupload.servlet.ServletFileUpload;  
  15.  
  16. publicclassmyUploadextendsHttpServlet{  
  17.  
  18. privateStringuploadPath="D:\upload\";  
  19. privateintmaxPostSize=100*1024*1024;  
  20.  
  21. publicvoiddoPost(HttpServletRequestreq,HttpServletResponseres)  
  22. throwsServletException,IOException{  
  23. res.setContentType("text/html;charset=UTF-8");  
  24.  
  25. DiskFileItemFactoryfactory=newDiskFileItemFactory();  
  26. factory.setSizeThreshold(4096);  
  27.  
  28. ServletFileUploadupload=newServletFileUpload(factory);  
  29. upload.setSizeMax(maxPostSize);  
  30. try{  
  31. ListfileItems=upload.parseRequest(req);  
  32. Iteratoriter=fileItems.iterator();  
  33. while(iter.hasNext()){  
  34. FileItemitem=(FileItem)iter.next();  
  35. if(!item.isFormField()){  
  36. Stringname=item.getName();  
  37. try{  
  38. item.write(newFile(uploadPath+name));  
  39. }catch(Exceptione){  
  40. e.printStackTrace();  
  41. }  
  42. }  
  43. }  
  44. }catch(FileUploadExceptione){  
  45. e.printStackTrace();  
  46. }  
  47.  
  48. }  
  49. }  
  50.  

 存放在../src/com/fileupload

7.在web.xml中加入如下代碼。(用于調(diào)用servlet)

  1. <servlet> 
  2.  
  3. <servlet-name>myUpload</servlet-name> 
  4.  
  5. <display-name>FileUploadServlet</display-name> 
  6.  
  7. <description>FileServletExample</description> 
  8.  
  9. <servlet-class>com.fileupload.myUpload</servlet-class> 
  10.  
  11. </servlet> 
  12. <servlet-mapping> 
  13.  
  14. <servlet-name>myUpload</servlet-name> 
  15.  
  16. <url-pattern>/myUpload</url-pattern> 
  17.  
  18. </servlet-mapping> 

 

【編輯推薦】

  1. 解析FlexSDK4的十大變化
  2. Flex必須了解的那些事
  3. 在Flex中使用樣式的五大方法
  4. FlexBuilder3.0與Eclipse3.4的***結(jié)合
  5. Flex ComboBox和Datagrid組件用法指導(dǎo)
責任編輯:佚名 來源: csdn.net
相關(guān)推薦

2010-08-10 15:38:32

Flex2.0

2010-07-28 09:18:03

Flex2.0

2010-07-28 09:10:41

Flex2.0

2010-07-28 12:41:18

Flex組件

2010-08-10 16:30:05

Flex上傳文件

2010-07-28 09:24:31

Flex2.0

2010-08-05 13:07:11

FlexJson

2010-08-11 14:47:54

Flex樣式

2010-08-02 16:33:11

Flex Spring

2010-08-10 14:08:09

Flex嵌入字體

2010-08-06 11:19:24

FlexPaperFlex

2010-07-28 10:01:42

Flex 初始化

2010-07-30 10:37:23

Flex數(shù)據(jù)綁定

2010-08-09 15:41:13

Flex字體

2010-08-10 14:18:15

RationalFunFlex

2010-08-10 14:25:42

SilkTestFlex

2010-08-04 13:30:11

Flex項目

2010-08-11 10:01:45

FlexJavaFlamingo

2010-08-12 15:10:17

Flex4

2010-07-27 15:36:15

Flex swf
點贊
收藏

51CTO技術(shù)棧公眾號