客户端------------------------------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="addListener()">
<mx:Script>
<![CDATA[
private var file:FileReference = new FileReference();
private function addListener():void{
file.addEventListener(Event.SELECT,opption);
file.addEventListener(Event.COMPLETE,opption);
file.addEventListener(ProgressEvent.PROGRESS,opption);
file.addEventListener(IOErrorEvent.IO_ERROR,opption);
}
private function opption(e:Event):void{
if(e.type == Event.SELECT){
filename.text = "选择了文件:"+file.name;
}else if(e.type == Event.COMPLETE){
filename.text = "上传完毕";
}else if(e.type == ProgressEvent.PROGRESS){
filename.text = "已上传: "+Math.round(100*(ProgressEvent(e).bytesLoaded/ProgressEvent(e).bytesTotal))+"%";
}else if(e.type == IOErrorEvent.IO_ERROR){
filename.text = "远程服务器未开启或出现异常,请稍后重试";
}
}
private function myUpload():void{
var url:String = "http://localhost:8080/flexLogin/servlet/FileUpload";
var urlRequest:URLRequest = new URLRequest(url);
file.upload(urlRequest);
}
]]>
</mx:Script>
<mx:Canvas width="436" height="200" backgroundColor="#FFFFFF">
<mx:Text x="10" y="10" text="请选择要上传的文件" fontWeight="bold" fontSize="12" id="filename"/>
<mx:Button x="10" y="38" label="浏览文件" fontSize="12" id="search" click="file.browse()"/>
<mx:Button x="96" y="40" label="上传" id="upload" click="myUpload()"/>
</mx:Canvas>
</mx:Application>
服务器端---------------------------------------------------------------
package cn.zhangxuemin.Login;
import java.io.File;
import java.io.IOException;
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;
public class FileUpload extends HttpServlet {
private static final long serialVersionUID = 1L;
public FileUpload() {
super();
}
public void destroy() {
super.destroy();
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String path = this.getServletConfig().getServletContext().getRealPath("/")+"upload\\";
int maxPostSize = 100 * 1024 * 1024;
DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setSizeThreshold(4096);
ServletFileUpload upload = new ServletFileUpload(factory);
upload.setSizeMax(maxPostSize);
upload.setHeaderEncoding("utf-8");
try {
@SuppressWarnings("unchecked")
List<FileItem> fileItems = upload.parseRequest(request);
Iterator<FileItem> iter = fileItems.iterator();
while (iter.hasNext()) {
FileItem item = (FileItem) iter.next();
if (!item.isFormField()) {
String name = item.getName();
System.out.println(path+name);
try {
item.write(new File(path + name));
} catch (Exception e) {
e.printStackTrace();
}
}
}
} catch (FileUploadException e) {
e.printStackTrace();
System.out.println(e.getMessage() + "结束");
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
}
public void init() throws ServletException {
}
}
分享到:
相关推荐
这里我们关注的是如何将Adobe Flex与Java的Servlet技术相结合,实现用户友好的文件上传界面。Flex作为一个强大的富客户端开发框架,可以提供美观且交互性强的用户界面,而Servlet则是Java Web应用中的标准组件,用于...
FileReference对象可以监听“uploadCompleteData”事件,当文件上传成功时触发。同时,通过Flash Player的StageVideo或者BitmapData类,Flex可以实现图片的实时预览功能。 在后端,Java Servlet会接收到HTTP请求,...
本示例主要涉及了`Flex`和`Servlet`技术的结合,用于实现多文件上传的功能。`Flex`是一种基于Adobe Flash Player或Adobe AIR运行时的富互联网应用程序(RIA)开发框架,而`Servlet`则是Java Web开发中的服务器端组件...
【标题】"Flex+Java Servlet文件上传实例"指的是一个结合了Adobe Flex前端技术和Java Servlet后端技术的文件上传系统。Flex是一种基于ActionScript和Flash Player的开放源代码框架,用于构建富互联网应用程序(RIA)...
通过以上步骤,你可以创建一个完整的Flex+Java Servlet文件上传系统。这个系统允许用户在Flex前端选择文件,然后通过Java Servlet在后端处理文件上传,提供了一种灵活且可扩展的解决方案。在实际应用中,可以根据...
Flex和Java文件上传技术是Web应用中常见的功能,主要用于用户在网页端上传本地文件到服务器。Flex是一款由Adobe公司开发的开源...在实际应用中,开发者需要结合这些技术来实现稳定、安全且用户体验良好的文件上传功能。
本示例“flex+java文件上传完整实例”提供了一个完善的解决方案,它结合了Adobe Flex前端技术和Java后端技术,实现了用户友好的文件上传功能。Flex是一种开源的RIA(富互联网应用)开发框架,而Java则提供了强大的...
Flex多文件上传组件是一种...总的来说,Flex多文件上传组件结合了前端的Flex技术和后端的Java Servlet技术,实现了高效、安全的文件上传功能。通过深入理解并定制这些组件,我们可以构建出满足各种需求的文件上传系统。
### Flex与Servlet结合实现文件上传及下载功能 在Flex与Servlet技术结合的背景下,本文将详细介绍如何通过这两种技术实现文件的上传与下载功能。通过分析提供的代码片段,我们可以看到一个典型的Flex应用程序界面...
Flex Struts2文件上传是一个常见的Web开发任务,它涉及到客户端与服务器端的数据交互,特别是涉及用户界面和后端服务之间的文件传输。Flex是Adobe开发的一个富互联网应用(RIA)框架,用于创建动态、交互式的用户...
4. **返回响应**:在Servlet处理完文件后,向Flex客户端返回一个响应,告知文件上传的状态,如成功、失败或部分成功。 在Flex4应用中,还需要处理上传进度显示、错误处理等用户体验优化。例如,可以监听...
Flex3和Java结合进行文件上传是一种常见的Web应用程序开发技术,尤其在处理大文件或需要复杂交互的场景下。Flex3是Adobe Flex框架的一个版本,它提供了丰富的用户界面组件和ActionScript编程模型,用于构建富互联网...
总之,这个Flex多文件上传的小demo展示了如何结合前端Flex技术和后端Java Servlet实现高效的文件上传功能,为用户提供了便捷的多文件上传体验。在深入学习和实践中,开发者可以进一步优化上传流程,提升系统性能,...
Flex 文件上传技术是一种在Web...总之,Flex与Java结合实现文件上传是一种常见的Web应用开发方案,它提供了良好的用户体验和强大的后端处理能力。通过理解并掌握上述知识点,开发者能够创建高效、安全的文件上传功能。
本文将深入探讨“flex_java文件上传(一)”这一主题,主要关注如何使用Flex与Java结合实现文件上传功能。Flex是一种用于创建富互联网应用程序(RIA)的开源框架,而Java则是一种广泛使用的后端开发语言。我们将围绕...
综上所述,Flex文件上传下载组件结合了Flex的富用户体验和Java Servlet的强大处理能力,提供了一个高效、安全的文件管理解决方案。通过合理的前端设计和后端逻辑,开发者可以构建出满足多样化需求的文件上传下载系统...
总之,Flex文件上传功能结合滚动条设计,提供了一种用户友好的多文件上传体验。而Servlet作为后端处理程序,确保了文件上传的稳定性和安全性。开发者可以通过学习和实践这样的示例,提升自己在Flex和Java Web开发中...
Flex文件上传下载是一种基于Adobe Flex技术的Web应用功能,它结合了Java后端服务来实现文件的上传和下载。在Flex前端,用户可以方便地通过图形界面选择文件,并通过Ajax方式与Java服务器进行异步通信,实现数据的...
总结,这个项目结合了Flex的富客户端功能和Java的后端处理能力,实现了Web端的文件上传和下载。对于更复杂的应用场景,可能还需要考虑多文件上传、断点续传、文件预览、权限控制等额外功能。同时,随着Flash逐渐被...