4、 Flex中Image控件相关之Java+Flex项目中ByteArray传到服务器端(java端)持久化(文件上传)...
2012-04-20 14:33
162 查看
Flex中Image控件相关之Java+Flex项目中ByteArray传到服务器端(java端)持久化(文件上传)<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" creationComplete="createHandler()" > <fx:Script> <![CDATA[ import mx.controls.Alert; import mx.utils.Base64Encoder; private function createHandler():void{ fileRefer.addEventListener(Event.SELECT,selectHandler); //选择文件 fileRefer.addEventListener(Event.COMPLETE,completeHandler);//加载完成 } private function selectHandler(event:Event):void{ if(fileRefer){ fileRefer.load(); } } private function completeHandler(event:Event):void{ if(fileRefer){ mySource.source = fileRefer.data; } } private var fileRefer:FileReference = new FileReference(); protected function sourceFile_clickHandler(event:MouseEvent):void { // TODO Auto-generated method stub fileRefer.browse([new FileFilter("Images(*.jpg;*.gif;*.png)","*.jpg;*.gif;*.png")]); } protected function btn_canvertToImage_clickHandler(event:MouseEvent):void { // TODO Auto-generated method stub if(fileRefer.data){ destSource.source = fileRefer.data; } } private var urlRequest:URLRequest = new URLRequest("http://localhost:9080/ByteArrayApp/persistence"); protected function btn_persistence_clickHandler(event:MouseEvent):void { // TODO Auto-generated method stub urlRequest.data = fileRefer.data; urlRequest.contentType = "application/octet-stream"; urlRequest.method = URLRequestMethod.POST; var urlloader:URLLoader = new URLLoader(); urlloader.dataFormat = URLLoaderDataFormat.BINARY; urlloader.addEventListener(Event.COMPLETE,completePersistenceHandler); urlloader.load(urlRequest); } private function completePersistenceHandler(event:Event):void{ Alert.show("持久化成功","恭喜"); } ]]> </fx:Script> <fx:Declarations> </fx:Declarations> <s:BorderContainer id="sourceFileContainer" x="8" y="30" borderColor="#1F7888" click="sourceFile_clickHandler(event)"> <s:Image id="mySource" x="0" y="-4" width="130" height="127"/> </s:BorderContainer> <s:Button id="btn_canvertToImage" x="158" y="93" width="52" height="18" label="==>" chromeColor="#1F7888" color="#FEFDFD" click="btn_canvertToImage_clickHandler(event)"/> <s:BorderContainer id="destSourceContainer" x="224" y="35" borderColor="#1F7888"> <s:Image id="destSource" width="130" height="127"/> </s:BorderContainer> <s:Button id="btn_persistence" x="372" y="90" label="==>持久化到硬盘" chromeColor="#1F7888" click="btn_persistence_clickHandler(event)"/> <s:Label x="34" y="167" width="75" height="17" text="点击选择图片"/> </s:Application>
package com.lmx.servlet;
import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.ServletInputStream; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class PersistenceServlet */ @WebServlet("/persistence") public class PersistenceServlet extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public PersistenceServlet() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub System.out.println("============BEGIN==================="); ServletInputStream servletInputStream = request.getInputStream(); int len = request.getContentLength(); byte buffer[] = new byte[len]; int readlen=0; FileOutputStream fos = new FileOutputStream(new File("c:/jun.jpg")); while((readlen=servletInputStream.read(buffer))!=-1){ fos.write(buffer, 0, readlen); } fos.flush(); fos.close(); servletInputStream.close(); System.out.println("============END==================="); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); } }
相关文章推荐
- Flex 与 Java 上传ByteArray图片数据
- Flex与.NET互操作(十五):使用FluorineFx中的字节数组(ByteArray)实现图片上传
- (Android)JavaSocket编程,文件上传到服务器,客户端Android,服务器端J2SE
- Java项目中对MongoDB数据库进行文件上传
- [转]Flex 项目不能运行jsp文件 java.lang.ClassCastException: org.apache.catalina.util.DefaultAnnotationProcessor
- Android 上传文件,图片。以及服务器端接收相关。
- Java - 如何在基于Java的Web项目中实现文件上传和下载?
- 文件上传相关代码及解释 java web
- Java 文件分块上传服务器端源代码
- Java上传文件简单小项目
- java http大文件上传,断点续传项目研究,Github上传源代码
- maven 构建项目时 java路径下配置属性文件相关
- java项目中的文件上传
- flex_文件上传处理JAVA类;
- Java 文件分块上传服务器端源代码
- Android 上传文件,图片。以及服务器端接收相关。
- Java 文件分块上传客户端和服务器端源代码
- struts2下载文件时出现:java.lang.ClassCastException: java.io.ByteArrayInputStream cannot be cast to 错误
- Android 上传文件,图片。以及服务器端接收相关。
- JAVA WEB 上传图片文件到工程项目下