日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java flex 上传文件_使用Flex和java servlet上传文件

發布時間:2025/5/22 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java flex 上传文件_使用Flex和java servlet上传文件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

資源都是來自網上。本實例將展示使用Flex和java servlet上傳文件。

事前準備就是到http://commons.apache.org 下載common-fileupload-1.1.1.jar以及common-io-1.2.jar兩個包。

前臺Flex代碼:

Xml代碼 ?

import?flash.net.FileReference;

import?mx.controls.Alert;

import?mx.events.CloseEvent;

import?flash.events.*;

private?var?file:?FileReference;

private?function?init():?void{

Security.allowDomain("*");

file?=?new?FileReference();

file.addEventListener(ProgressEvent.PROGRESS,?onProgress);

file.addEventListener(Event.SELECT,?onSelect);

file.addEventListener(Event.COMPLETE,?completeHandle);

}

private?function?completeHandle(event:Event):void{

Alert.show("恭喜你,上傳成功");

}

private?function?upload():?void{

var?imageTypes:FileFilter?=?new?FileFilter("Images?(*.jpg,?*.jpeg,?*.png)",?"*.jpg;*.jpeg;*.png");

var?allTypes:Array?=?new?Array(imageTypes);

file.browse(allTypes);

file.browse();

}

private?function?onSelect(e:?Event):?void{

Alert.show("上傳?"?+?file.name?+?"?(共?"+Math.round(file.size)+"?字節)?",

"確認上傳",

Alert.YES|Alert.NO,

null,

proceedWithUpload);

}

private?function?onProgress(e:?ProgressEvent):?void{

lbProgress.text?=?"?已上傳?"?+?e.bytesLoaded

+?"?字節,共?"?+?e.bytesTotal?+?"?字節";

var?proc:?uint?=?e.bytesLoaded?/?e.bytesTotal?*?100;

bar.setProgress(proc,?100);

bar.label=?"當前進度:?"?+?"?"?+?proc?+?"%";

}

private?function?proceedWithUpload(e:?CloseEvent):?void{

if?(e.detail?==?Alert.YES){

var?request:?URLRequest?=?new?URLRequest("http://localhost:8080/FileUploaded/FileUploaded");

try?{

file.upload(request);

}?catch?(error:Error)?{

trace("上傳失敗");

}

}

}

]]>

minimum="0"visible="true"maximum="100"label="當前進度:?0%"

direction="right"mode="manual"width="200"/>

接下來寫的是Java Servlet:

package?upload;

import?java.io.File;

import?java.io.IOException;

import?java.io.PrintWriter;

import?java.util.Iterator;

import?java.util.List;

import?javax.servlet.ServletException;

import?javax.servlet.http.HttpServlet;

import?javax.servlet.http.HttpServletRequest;

import?javax.servlet.http.HttpServletResponse;

import?org.apache.commons.fileupload.FileItem;

import?org.apache.commons.fileupload.FileUploadException;

import?org.apache.commons.fileupload.disk.DiskFileItemFactory;

import?org.apache.commons.fileupload.servlet.ServletFileUpload;

/**

*

*?@author?crystal

*/

public?class?FileUploaded?extends?HttpServlet?{

/**

*?Processes?requests?for?both?HTTPGETandPOSTmethods.

*?@param?request?servlet?request

*?@param?response?servlet?response

*/

//?定義文件的上傳路徑

private?StringuploadPath="d:\\a\\";

//?限制文件的上傳大小

private?intmaxPostSize=100*?1024?*?1024;

public?FileUploaded()?{

super();

}

public?void?destroy()?{

super.destroy();

}

protected?void?processRequest(HttpServletRequest?request,?HttpServletResponse?response)

throws?ServletException,?IOException?{

System.out.println("Access?!");

response.setContentType("text/html;charset=UTF-8");

PrintWriterout=response.getWriter();

//保存文件到服務器中

DiskFileItemFactoryfactory=newDiskFileItemFactory();

factory.setSizeThreshold(4096);

ServletFileUploadupload=newServletFileUpload(factory);

upload.setSizeMax(maxPostSize);

try?{

ListfileItems=upload.parseRequest(request);

Iteratoriter=fileItems.iterator();

while?(iter.hasNext())?{

FileItemitem=?(FileItem)?iter.next();

if?(!item.isFormField())?{

Stringname=item.getName();

System.out.println(name);

try?{

item.write(new?File(uploadPath?+?name));

//?SaveFiles=newSaveFile();

//?s.saveFile(name);

}?catch?(Exception?e)?{

e.printStackTrace();

}

}

}

}?catch?(FileUploadException?e)?{

e.printStackTrace();

System.out.println(e.getMessage()?+?"結束");

}

}

//

/**

*?Handles?the?HTTPGETmethod.

*?@param?request?servlet?request

*?@param?response?servlet?response

*/

protected?void?doGet(HttpServletRequest?request,?HttpServletResponse?response)

throws?ServletException,?IOException?{

processRequest(request,?response);

}

/**

*?Handles?the?HTTPPOSTmethod.

*?@param?request?servlet?request

*?@param?response?servlet?response

*/

protected?void?doPost(HttpServletRequest?request,?HttpServletResponse?response)

throws?ServletException,?IOException?{

processRequest(request,?response);

}

/**

*?Returns?a?short?description?of?the?servlet.

*/

public?String?getServletInfo()?{

return?"Short?description";

}

//

}

如果使得你的Servlet被訪問,你還需要在WEB-INF/web.xml 添加如下的xml語句:[在中]

FileUploaded

upload.FileUploaded

FileUploaded

/FileUploaded

效果圖:

總結

以上是生活随笔為你收集整理的java flex 上传文件_使用Flex和java servlet上传文件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。