Flex 页面代码
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" creationComplete="init()" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> <fx:Declarations> </fx:Declarations> <fx:Script> <![CDATA[ import flash.events.*; import flash.net.FileReference; import mx.controls.Alert; import mx.events.CloseEvent; 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;*.xlsx"); 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("ImportExcelServlet"); try { file.upload(request); } catch (error:Error) { Alert("上传失败"); } } } ]]> </fx:Script> <mx:Canvas width="100%" height="100%" x="10" y="170" fontSize="15"> <mx:VBox width="100%" horizontalAlign="center"> <mx:Label id="lbProgress" text="上传"/> <mx:ProgressBar id="bar" labelPlacement="bottom" minimum="0" visible="true" maximum="100" label="当前进度: 0%" direction="right" mode="manual" width="200"/> <mx:Button label="上传文件" click="upload();"/> </mx:VBox> </mx:Canvas> </mx:Application>
JAVA 代码
package com.sddl.util; 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 ImportExcelServlet extends HttpServlet { /** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods. * @param request servlet request * @param response servlet response */ // 定义文件的上传路径 private String uploadPath = "d:\\"; // 限制文件的上传大小 private int maxPostSize = 100 * 1024 * 1024; public ImportExcelServlet() { 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"); PrintWriter out = response.getWriter(); //保存文件到服务器中 DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(4096); ServletFileUpload upload = new ServletFileUpload(factory); upload.setSizeMax(maxPostSize); try { List fileItems = upload.parseRequest(request); Iterator iter = fileItems.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (!item.isFormField()) { String name = item.getName(); System.out.println(name); try { item.write(new File(uploadPath + name)); // SaveFile s = new SaveFile(); // s.saveFile(name); } catch (Exception e) { e.printStackTrace(); } } } } catch (FileUploadException e) { e.printStackTrace(); System.out.println(e.getMessage() + "结束"); } } // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code."> /** * Handles the HTTP <code>GET</code> method. * @param request servlet request * @param response servlet response */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } /** * Handles the HTTP <code>POST</code> method. * @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"; } // </editor-fold> }
web.xml
<!-- test --> <servlet> <servlet-name>ImportExcelServlet</servlet-name> <servlet-class>com.sddl.util.ImportExcelServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>ImportExcelServlet</servlet-name> <url-pattern>/ImportExcelServlet</url-pattern> </servlet-mapping>
来源:http://yexin218.iteye.com/blog/207219
发表评论
-
Flex实现在线显示Word文档,FlexPaper
2013-09-22 13:04 2798Flex实现浏览器在线显示Word文档(不能实现Word在线编 ... -
简单的----Flex从服务器上下载文件,不用后台代码支持
2013-08-19 17:02 1857<?xml version="1.0&qu ... -
Flex拉伸.PNG图片,边角不会变形
2013-08-08 15:39 813<mx:Canvas width="59% ... -
Flex4中修改toolTip的字体以及效果
2013-08-08 15:41 892在Flex4的可视组件中,可以通过toolTip指定鼠标移到对 ... -
Flex的Array和ArrayCollection
2013-08-08 15:40 7401.array作为控件使用 FLEX3 ... -
Flex4中添加自定义右键菜单
2013-08-08 15:41 762下面这个例子给Flex的右键添加一个自定义的菜单,并且在点击菜 ... -
Flex全屏的实现
2013-06-21 01:52 628编写如下事件,实现全屏: stage.displayState ... -
去掉Flex4生成的SWF加载时的进度条
2013-06-21 01:47 917方法一: <?xml version="1.0 ... -
Flex4中动态生成RadioButton,绑定数据源
2013-06-21 01:43 817代码如下: <?xml version="1. ... -
破解过的Flex amcharts,有例子
2013-06-21 01:33 1647附件已经上传: 解压后Documentation下有Index ... -
Flex4 自带组件添加的 柱状图、饼状图等图表
2013-06-21 01:21 15791.添加一个最简单的柱状图 <?xml version ...
相关推荐
这个"Flex4.6+java+servlet上传图片例子+图片上传预览"的项目,结合了前端的Flex技术和后端的Java Servlet,为我们提供了一个完整的解决方案。下面将详细解释这个项目的各个组成部分及其工作原理。 首先,让我们来...
Flex+Java Servlet处理文件上传 关于上传文件
在本文中,我们将深入探讨如何实现Flex与Java Servlet结合进行文件上传。首先,我们需要了解Flex是一种基于Adobe AIR的开源框架,用于构建富互联网应用程序(RIA),而Java Servlet是Java平台上的一个标准,用于处理...
Flex和Java文件上传技术是Web应用中常见的功能,主要用于用户在网页端上传本地文件到服务器。Flex是一款由Adobe公司开发的开源框架,主要用于构建富互联网应用程序(Rich Internet Applications,RIA)。它基于...
【标题】"Flex+Java Servlet文件上传实例"指的是一个结合了Adobe Flex前端技术和Java Servlet后端技术的文件上传系统。Flex是一种基于ActionScript和Flash Player的开放源代码框架,用于构建富互联网应用程序(RIA)...
Flex+Java Servlet处理文件上传
本示例“flex+java文件上传完整实例”提供了一个完善的解决方案,它结合了Adobe Flex前端技术和Java后端技术,实现了用户友好的文件上传功能。Flex是一种开源的RIA(富互联网应用)开发框架,而Java则提供了强大的...
本教程将深入探讨如何结合Flex前端和Java后端实现文件上传功能。 1. Flex基础知识: - Flex是ActionScript 3.0的框架,用于创建具有交互性和动态UI的Web应用。 - Flex项目通常由.mxml和.as文件组成,mxml用于定义...
标题中的“Flex+Java多文件上传”指的是使用Adobe Flex(一种富互联网应用程序开发框架)与Java技术相结合,实现用户在Web应用中上传多个文件的功能。这个功能通常涉及到前端的用户界面设计、后端的文件处理逻辑以及...
标题“Flex+Java+BlazeDS多文件上传”涉及到的技术栈是Adobe Flex、Java和BlazeDS,这三种技术在Web应用开发中常用于构建富客户端应用和实现服务器端的数据交互。下面将详细阐述这些技术及其在多文件上传场景中的...
综上所述,Flex+Java上传开发工具包为开发人员提供了一套完整的解决方案,帮助他们轻松实现Web应用中的文件上传功能,兼顾易用性、性能和安全性。无论是在企业级应用还是个人项目中,这套工具包都是一个值得信赖的...
总的来说,理解和实现Flex与Java结合的文件上传功能需要掌握前端的Flex编程、后端的Java Servlet或Spring MVC技术,以及HTTP协议的基础知识。同时,熟悉文件I/O操作、安全性考量和用户界面设计也是必不可少的。通过...
在Flex和Java集成开发环境中,实现文件图片上传功能是一项常见的需求。这个功能主要涉及客户端的用户界面交互和服务器端的数据处理。在这个场景中,我们利用Adobe Flex作为前端UI框架,结合Java后端来处理文件上传...
本示例探讨的是如何使用Adobe Flex与Java技术来实现一个简单的图片上传功能。Flex是一种基于ActionScript 3的开源框架,用于构建富互联网应用程序(RIA),而Java则是一种广泛使用的后端开发语言,二者结合可以创建...
在提供的压缩包“flex3+java文件上传”中,可能包含了一个完整的示例项目,包括Flex的源代码、Java的Servlet代码以及必要的配置文件。导入这个项目后,可以直接运行并测试文件上传功能,这对于学习和理解Flex3与Java...
本示例主要涉及了`Flex`和`Servlet`技术的结合,用于实现多文件上传的功能。`Flex`是一种基于Adobe Flash Player或Adobe AIR运行时的富互联网应用程序(RIA)开发框架,而`Servlet`则是Java Web开发中的服务器端组件...