前几天写了一篇jsp页面利用ajaxFileUpload上传文件。如今把flex上传页面也分享出来:

前台页面

<?xml version="1.0" encoding="utf-8"?>
<s:HGroup xmlns:fx="<a target=_blank href="http://ns.adobe.com/mxml/2009">http://ns.adobe.com/mxml/2009</a>"
    xmlns:s="library://ns.adobe.com/flex/spark"
    xmlns:mx="library://ns.adobe.com/flex/mx" creationComplete="hgroup1_creationCompleteHandler(event)"
    width="100%" height="30" >
 <fx:Script>
  <![CDATA[
   import mx.collections.ArrayList;
   import mx.controls.Alert;
   import mx.events.FlexEvent;
   private var file:FileReference = new FileReference;
   public var fileList:ArrayList;
   public var manualCheck:ManualCheck;
   
   protected function hgroup1_creationCompleteHandler(event:FlexEvent):void
   {
    // TODO Auto-generated method stub
//    file.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA,fileUploadCompleteHandler);
    file.addEventListener(Event.SELECT, fileSelect); 
//    file.addEventListener(IOErrorEvent.IO_ERROR,uploadError);
   }
   
   protected function button2_clickHandler(event:MouseEvent):void
   {
    // 浏览
    file.browse();
   }
   
   private function fileSelect(e:Event):void 
   {  
    if(fileList.getItemIndex(file) == -1){
     fileList.addItem(file);
    }
    fileName.text = file.name;
   }
   
//   private function fileUploadCompleteHandler(e:DataEvent):void{     
//    
//   }
   
   private function uploadError(e:IOErrorEvent):void{    
    this.cursorManager.removeBusyCursor();
    //获取后台的错误提示信息
    Alert.show("上传出错。","提示");
   }
   
   
   protected function button3_clickHandler(event:MouseEvent):void
   {
    // 删除
    fileList.removeItem(this.file);
    manualCheck.group.removeElement(this);
   }
   
  ]]>
 </fx:Script>
 <fx:Declarations>
  <!-- 将非可视元素(比如服务、值对象)放在此处 -->
  
 </fx:Declarations>
 <s:TextInput id="fileName" width="350"/>
 <mx:Button label="浏览" click="button2_clickHandler(event)" fontWeight="bold"
      overSkin="@Embed(source='/assets/dfpBtn/btnliulan2.png')"
      skin="@Embed(source='/assets/dfpBtn/btnliulan.png')"/>
 <mx:Button click="button3_clickHandler(event)"
      overSkin="@Embed(source='/assets/dfpBtn/deletebtn2.png')"
      skin="@Embed(source='/assets/dfpBtn/deletebtn.png')"/>
</s:HGroup>

as:

var file:FileReference = fileList.getItemAt(i) as FileReference;
var request:URLRequest=new URLRequest("s/upload/uploadFile");
request.data=new URLVariables();
request.data.orderRedoRecord=n; try{
file.upload(request,"file");
} catch (error:Error){
isSuccess = false;
Alert.show("文件上传失败");
}

后台java:

@RequestMapping(value = "/uploadFile")
@ResponseBody()
public String UploadFiles(@RequestParam(value = "file") MultipartFile file) {
String result = "";
if (!file.isEmpty()) {
try {
String attachName = file.getOriginalFilename();
logger.info(attachName); String filePath = "你的路径";
//此处省去业务代码
//FileUtils.saveDataToFile(file.getBytes(), filePath);
result = "上传成功";
} catch (Exception e) {
// TODO Auto-generated catch block
result = "上传失败";
e.printStackTrace();
}
}
return result;
}


Flex上传文件的更多相关文章

  1. Flex上传文件报“Error #2038”

    1.错误描述 ioerror: [IOErrorEvent type="ioError" bubbles=false cancelable=false eventPhase=2 t ...

  2. Flex上传文件Java端解决中文乱码问题

    1.Flex端进行编码 public function encodeStr(str:String, charSet:String):String { var result:String =" ...

  3. Flex和Servlet结合上传文件

    Flex和Servlet结合上传文件 1.准备工作 (1)下载文件上传的组件,commons-fileupload-1.3.1.jar (2)下载文件输入输出jar,commons-io-2.4.ja ...

  4. 关于Extjs MVC模式上传文件的简单方式

    Extjs新手研究上传文件的事情估计是件很头痛的问题,毕竟,我就在头痛.最近两天一直在忙文件上传问题,终于小有收获. 用的是Extjs+MVC3.0+EF开发,语言为C#.前台window代码显示列内 ...

  5. Element-ui上传文件(删除、添加、预览)

    先看下效果是不是你所需要的.... 上传文件进度条后续会加上的.... 功能需求:默认为上传状态 1.未上传:点击可上传文件 2.已上传:点击可上传文件 (1).鼠标移入[删除] (2).鼠标点击[预 ...

  6. element ui实现手动上传文件,且只能上传单个文件,并能覆盖上传。

    element ui提供了成熟的组件场景,但实际工作中难免会遇到认(sha)真(diao)的产品.比如,最近遇到的,要求实现手动上传特定格式文件(用户点击“上传文件”按钮,确定之后,只是单纯选择了文件 ...

  7. IE8/9 JQuery.Ajax 上传文件无效

    IE8/9 JQuery.Ajax 上传文件有两个限制: 使用 JQuery.Ajax 无法上传文件(因为无法使用 FormData,FormData 是 HTML5 的一个特性,IE8/9 不支持) ...

  8. 三种上传文件不刷新页面的方法讨论:iframe/FormData/FileReader

    发请求有两种方式,一种是用ajax,另一种是用form提交,默认的form提交如果不做处理的话,会使页面重定向.以一个简单的demo做说明: html如下所示,请求的路径action为"up ...

  9. asp.net mvc 上传文件

    转至:http://www.cnblogs.com/fonour/p/ajaxFileUpload.html 0.下载 http://files.cnblogs.com/files/fonour/aj ...

随机推荐

  1. BestCoder Round #50 (div.1) 1001 Distribution money (HDU OJ 5364)

    题目:Click here 题意:bestcoder上面有中文题目 #include <iostream> #include <cstdio> #include <cst ...

  2. UDP包结构

    UDP包结构  // 参考: http://www.2cto.com/net/201307/224715.html UDP数据包由首部和数据组成,每行4个字节(32位),首部固定长度为8个字节(2行) ...

  3. FFT算法

    FFT算法的完整DSP实现 傅里叶变换或者FFT的理论参考: [1] http://www.dspguide.com/ch12/2.htm The Scientist and Engineer's G ...

  4. 理解iOS 8中的Self Sizing Cells和Dynamic Type

    http://www.cocoachina.com/ios/20140922/9717.html 在iOS 8中,苹果引入了UITableView的一项新功能--Self Sizing Cells,对 ...

  5. 基于Sql Server 2008的分布式数据库的实践(三)

    原文 基于Sql Server 2008的分布式数据库的实践(三) 配置PHP 1.打开PHP配置文件,找到extension=php_mssql.dll,将前面的注释符号去掉 2.找到mssql.s ...

  6. xen虚拟机安装实践

    xen虚拟机环境安装,用了2天的时间摸索,终于出来了,给大家分享一下. 1.安装宿主环境,我使用的是Centos6.3 2.安装xend,参考了一篇老外的文章,基本比较顺利. 地址:http://xe ...

  7. uva - Broken Keyboard (a.k.a. Beiju Text)(链表)

    11988 - Broken Keyboard (a.k.a. Beiju Text) You’re typing a long text with a broken keyboard. Well i ...

  8. HTML5实现IP Camera网页输出

    HTML5实现IP Camera网页输出 这两天做OA项目.有一个要通过IP Camera将视频流输出到浏览器端的模块.尽管如今买到的摄像头都会提供浏览器和client的实现,可是一般来说都是仅仅支持 ...

  9. 【Unity 3D】学习笔记四十:射线

    射线 射线,类比的理解就是游戏中的子弹.是在3D世界里中一个点向一个方向发射的一条无终点的线.在发射的过程中,一旦与其它对象发生碰撞,就停止发射. 射线的原理 创建一个射线时,首先须要知道射线的起点和 ...

  10. BZOJ 3631: [JLOI2014]松鼠的新家( 树链剖分 )

    裸树链剖分... ------------------------------------------------------------------- #include<bits/stdc++ ...