- 浏览: 970742 次
- 性别:
- 来自: 珠海
文章分类
最新评论
-
Yunjey:
Yunjey 写道这样子的话、grid中的editable如何 ...
Flex创建可编辑以及分页的DataGrid -
Yunjey:
这样子的话、grid中的editable如何设置啊?!
Flex创建可编辑以及分页的DataGrid -
di1984HIT:
写的很好~~
JCalendar组件 -
sanny81:
此文真棒!感谢一路风尘的奉献!
但我有一疑 ...
Filter发送自定义数据详解 -
umgsai:
求完整demo umgsai@126.com
Flex和Jsp创建用户登入系统
资源都是来自网上。本实例将展示使用Flex和java servlet上传文件。
事前准备就是到http://commons.apache.org
下载common-fileupload-1.1.1.jar以及common-io-1.2.jar两个包。
前台Flex代码:
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns="*" creationComplete="init();"> <mx:Script> <![CDATA[ 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("上传失败"); } } } ]]> </mx: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" themeColor="#F20D7A" 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>
http://localhost:8080/FileUploaded/FileUploaded 就是你自己写的servlet的路径了。
接下来写的是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 HTTP <code>GET</code> and <code>POST</code> methods. * @param request servlet request * @param response servlet response */ // 定义文件的上传路径 private String uploadPath = "d:\\a\\"; // 限制文件的上传大小 private int maxPostSize = 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"); 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> }
如果使得你的Servlet被访问,你还需要在WEB-INF/web.xml 添加如下的xml语句:[在<web-app>中]
<!-- For file uploaded --> <servlet> <servlet-name>FileUploaded</servlet-name> <servlet-class>upload.FileUploaded</servlet-class> </servlet> <servlet-mapping> <servlet-name>FileUploaded</servlet-name> <url-pattern>/FileUploaded</url-pattern> </servlet-mapping>
效果图:
参考:
http://blog.csdn.net/meteorlWJ/archive/2008/06/01/2450234.aspx
http://swingchen.bokee.com/5943371.html
http://www.cnblogs.com/dannyr/archive/2006/11/13/559006.html
- FileUploaded.rar (540.5 KB)
- 描述: Eclipse工程文件包含两个jar
- 下载次数: 2729
评论
19 楼
shitou_pengju
2013-01-28
我用Eclipse 8.6 导入以后报错
18 楼
lingzhengquan
2012-02-22
最好处理下中文,以免乱码
request.setCharacterEncoding("UTF-8");//防止文件名称带有汉字后传到服务器乱码
request.setCharacterEncoding("UTF-8");//防止文件名称带有汉字后传到服务器乱码
17 楼
qlong8807
2011-12-06
必须得支持啊
16 楼
hnwangdan
2011-02-15
15 楼
yexin218
2010-05-21
tangfeng1107 写道
你好,我仿照你的例子写了一个测试程序,发现能够监听到Event.SELECT的事件,但是监听不到Event.COMPLETE的事件,配置WEB-INF/web.xml 也完全按照你说的办法,但是现在程序运行时选择文件上传,tomcat的控制台显示不出“Access”的内容,应该是servlet的没被调用,请问一下,servlet还需要什么特别的配置不?
不好意思,好久不弄Felx,很多都忘记了。你自己google吧
14 楼
tangfeng1107
2010-05-12
你好,我仿照你的例子写了一个测试程序,发现能够监听到Event.SELECT的事件,但是监听不到Event.COMPLETE的事件,配置WEB-INF/web.xml 也完全按照你说的办法,但是现在程序运行时选择文件上传,tomcat的控制台显示不出“Access”的内容,应该是servlet的没被调用,请问一下,servlet还需要什么特别的配置不?
13 楼
yexin218
2010-03-27
macemers 写道
请问怎么导入这个工程文件啊?!
不知道eclipse有没有这个功能,没有的话,自己新建工程
12 楼
macemers
2010-03-26
请问怎么导入这个工程文件啊?!
11 楼
yexin218
2009-07-24
silen85 写道
楼主这个东西太有用 了!
呵呵,那就好
10 楼
silen85
2009-07-24
楼主这个东西太有用 了!
9 楼
piziwang
2008-12-03
非常不错,得到好东西了,呵呵! 万分感谢!
8 楼
nijiaben
2008-11-27
谢谢楼主哈
7 楼
youxinxianglian
2008-11-20
11111111
6 楼
hegang3
2008-09-24
请问
后台得不到文件列表是怎么回事。我是把一个flex工程发布到一个web工程里的。
后台得不到文件列表是怎么回事。我是把一个flex工程发布到一个web工程里的。
5 楼
yongboy
2008-08-23
多谢
收下了~
收下了~
4 楼
ssuhvs
2008-08-15
强悍呀
3 楼
liufangmeng
2008-07-25
doPost() 哈哈 不好意思。。
顶下楼主
顶下楼主
2 楼
liufangmeng
2008-07-25
在哪个地方声明 调用这个类 就走 processRequest 方法呢?
1 楼
小甜甜弟弟
2008-06-24
强
发表评论
-
Rounded Colorized Image Borders
2009-05-16 22:24 1084This week I ran across a really ... -
Flex使用自定义皮肤和字体
2009-03-29 14:57 4234首先介绍两个Flex皮肤网站: 1. Skins and Th ... -
Flex--XML转换成ArrayCollection
2009-03-28 23:24 9654xml数据: <?xml version="1 ... -
Flex使用弹出窗口为DataGrid添加新数据
2009-03-28 21:01 2671经常在Demo中会看到列表,表格等方式来显示数据。当然有时候也 ... -
关于Flex使用Blazeds连接Java后台的一个注意笔记
2009-03-24 16:49 2215今天在做Flex程序测试的时候,发现之前可以通过Blazeds ... -
Flex-设置DataGrid被选择行的风格
2009-03-22 20:54 7211这里例子将展示如何使用用户自定义的item renderer来 ... -
Flex使用JSON格式与Java通信
2009-03-22 00:09 7323在使用Flex,Java,Json更新Mysql数据【高级篇】 ... -
Flex--主程序与弹出窗口之间传递数据
2009-03-20 23:08 2678主程序:TitleWindowDataTest.mxml & ... -
Flex中显示手型鼠标
2009-03-06 21:40 5226有些时候,我们需要在Flex组件上--Label或者Butto ... -
Flex与JSON及XML的互操作
2009-03-01 17:18 1919作者 Jack Herrington 译者 张凯 ... -
Flex代码格式化插件
2009-03-01 16:52 2741在7Yue 那里看到这个轻巧实用的Eclipse插件,它可以 ... -
Flex-CUBlog排行榜解析
2008-07-29 20:55 1976不知道为什么一直有一个想法把CUBlog排行榜的数据提取出来放 ... -
使用Flex,Java,Json更新Mysql数据【高级篇】
2008-06-24 20:21 5837前面已经介绍如何使用Flex,java,json来更新dat ... -
Flex和Jsp创建用户登入系统
2008-06-22 16:16 4299在开始之前我们先来看下效果:【userName==passwo ... -
Flex中嵌入Google地图
2008-06-18 22:29 5981在我们开始之前,先来看一个例子:http://scriptpl ... -
Flex程序发布
2008-06-17 23:32 4016当你写好了一个Flex程序,想要按照某种方式发布。比如我们在 ... -
Flex自定义Alert窗口显示位置
2008-06-16 18:25 6337好像Flex3也没有找到可以直接使用的(x,y)的方法来指定A ... -
Flex支持滑轮滚动
2008-06-16 18:23 3445有些时候需要在Flex界面中支持鼠标的滑轮滚动功能,比如通过滑 ... -
Flex实现简单的Email发送
2008-06-14 16:35 4387本文主要介绍和实现怎么使用Flex-java来实现Em ... -
Flex创建可编辑以及分页的DataGrid
2008-06-13 16:32 14869之前那篇文章:使用Flex,Java,Json更新Mys ...
相关推荐
本示例“flex+java文件上传完整实例”提供了一个完善的解决方案,它结合了Adobe Flex前端技术和Java后端技术,实现了用户友好的文件上传功能。Flex是一种开源的RIA(富互联网应用)开发框架,而Java则提供了强大的...
3. Java后台处理:在Java端,你需要创建一个对应的Servlet或Spring MVC控制器来处理来自Flex的请求。这个控制器会接收到Flex传递过来的登录信息,然后使用JDBC(Java Database Connectivity)API与MySQL数据库进行...
3. **Servlet配置**:在Servlet端,我们需要配置web.xml文件,声明处理Flex请求的Servlet。例如,可以使用BlazeDS或 GraniteDS这样的服务来提供AMF支持。这些服务允许Servlet容器处理AMF请求,与Flex客户端进行交互...
- **Tomcat 6.x** 是Apache软件基金会的开源Servlet容器,常被用作Java Web应用服务器。 2. **集成环境搭建** - 首先,确保Flash Builder 4.5和MyEclipse 10已经正确安装,并且Tomcat 6.x也已下载并配置好环境...
《Flex + Java 最佳实例(附工程)》 在当今的软件开发领域,Flex与Java的结合使用成为了构建富互联网应用程序(RIA)的一种流行选择。Flex作为Adobe开发的开源前端框架,以其强大的图形用户界面(GUI)设计能力,...
本项目“flex+java+mysql”是一个用户登录系统,它利用了这些技术的优势,为初学者提供了很好的学习实例。下面将详细阐述这个组合中的各个知识点。 1. Flex:Flex是由Adobe开发的一种开放源代码的开发框架,主要...
3. **服务创建**:在Flex端,创建一个AMF通道连接到服务器上的服务,这个服务通常是一个Java Servlet,负责处理Flex发来的请求,调用Hibernate方法进行数据操作。 4. **数据访问**:在Flex应用中,使用Service或...
本文简单介绍了Flex如何通过servlet连接数据库(Access)。使用的是给后台传递数据的方法。 本文开发使用的软件: Flex3-eclipse plugin Tomcat 6.0 Microsoft access 2003 Eclipse 3.3 各个软件的安装和...
1. **项目结构**:可能有Flex客户端的源代码(.mxml和.as文件)、Java服务器端的类(.java文件)、配置文件(如 BlazeDS 的 services-config.xml 和 flex-servlet.xml)以及可能的数据模型(如JavaBean)。...
Flex是Adobe公司开发的...这个学习教程集合可能包括了各种实例、源码、讲解文档,帮助你深入理解并掌握Flex、ActionScript和Java之间的协同工作。通过学习,你将能够构建出复杂的跨平台RIA,实现前后端数据的无缝交互。
由于 BlazeDS 需要将 Java 接口 FlexService 暴露给 Flex 前端,因此,我们在配置文件 remoting-config.xml 中将 FlexService 接口声明为一个服务: 清单 6. 定义 flexService 服务 <destination id="flex...
总的来说,链路监控DEMO是一个结合了FLEX和JAVA技术的实例,为学习者提供了实际操作和理解链路监控系统的机会。通过这个DEMO,开发者不仅可以掌握这两种技术的融合应用,还能了解到监控系统的设计原则和最佳实践,...
3. **配置文件**:如flex-servlet.xml(Flex Remoting配置)、web.xml(Java EE的部署描述符)等,这些文件定义了Flex与Java EE之间的通信通道。 4. **数据库脚本**:可能包含SQL文件,用于创建和初始化数据库表...