




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Flex问答1,Flex解决什么问题?很多Web应用程序的用户体验不能令人满意,从而导致了高弃用率、高培训费用和投资的浪费。Flex提供一种新的技术以解决这些问题。在Flex出现之前,试图解决用户界面问题的企业级开发者常常因为HTML的局限性而遭受挫折。HTML起初是为浏览静态文档而设计的,并不适合于提供内容丰富、交互性强和数据驱动的应用程序。Flex为这些程序员提供了一种方法,可以开发出将桌面软件的强交互性和丰富内容与Web的广度结合在一起的应用程序;程序员可以使用他们偏好的编程方法、开发流程。该方法还满足了基础结构与集成要求。Flex允许应用程序开发者描述应用程序的用户界面布局和UI控件,并使用开发者熟悉的、基于标准的编程模型进行数据绑定。2, 什么是MacromediaFlex?MacromediaFlex是为满足希望开发RichInternet应用程序的企业级程序员的需求而推出的表示服务器和应用程序框架。RIA将桌面软件的响应速度和丰富功能与Web应用程序的广度结合在一起,以提供效果更好的最终用户体验。Flex表示服务器提供基于标准的、声明性的编程方法和流程,并提供运行时服务,用于开发和部署丰富客户端应用程序的表示层。Flex开发者使用直观的基于XML的语言来定义丰富的用户界面;该语言由Flex服务器翻译成智能的客户端应用程序,在普遍存在的Flash运行时环境中运行。Flex应用程序有多大?Flex应用程序框架大约有100K。它包括了管理布局、浏览器交互和完成其它一些功能所必需的组件和代码。额外功能会大大增加应用程序的大小;一个相对复杂的应用程序需要150200K的初始下载。应用程序数据以很小的数据包的形式在客户端和服务器之间来回传输,每个数据包只有几K大小。Flex1.0不支持运行时共享库,因此每个Flex应用程序都需要下载框架。Macromedia将在Flex的未来版本中加入对运行时共享库的支持。有了运行时共享库,Flex框架将能够在客户端不同的SWF之间共享。欲获取更多相关信息,请前往Flex开发者中心查看DavidWadhwani*的文章。【Bindable】Bindableprivate var i:int;/帮定之后这个I变量则可以直接在mxl函数中调用internal function getValue(num:int):intreturn num*num;mx:HSlider x=186 y=256 minimum=1 maximum=10 snapInterval=1 width=235 height=22 id=hsliderId change=i=hsliderId.value/2种帮定leafage事件!CDATAimport mx.controls.Alert;import com.lch.test.Astest;var at:Astest=new Astest();var w:String = at.hello();private function test():voidtt.text=at.hello();internal function init():voidbbb.addEventListener(leafage,onPress);bt.addEventListener(MouseEvent.CLICK,onClick);internal function onClick(etc:MouseEvent):void/if(etc.currentTarget=etc.target)/tt.text=at.hello();/bt.addEventListener(MouseEvent.ROLL_OVER,testAlert);不能对象中对象,弱对象/bt.dispatchEvent(new Event(leafage,true,false);internal function testAlert():voidAlert.show(你点击了一下!);/tt.text=at.hello();public function onPress(eve:Event):void/eve 不能少Alert.show(你点击了一下!+eve.type);登录小例unameid.textpid.text /下在就是提交到的PHP?php/获取源文件$uname=$_GETuname;$pwd=$_GETpassword;if($uname=leafage&$pwd=123)/echo success;echo success;elseecho success; ?用amfphp插件通信/首先要到gateway.php改一编码,/暂时只知道将TestClass建到service包里面去,里面的数组可以直接在AS里面用FOR得到,这些将由插件完成了!所以我们在TextArea里面可以看到字符的输出!Flex与Java通信用Blazds搭建工程用插件Blazeds1在Blazeds模板中新建一工程,也就是拷到一个你要建立工程的目录下面去设(firstFlex2):然后在WEBINF目录下建一个Java工程:不难2,用Flex Bulids3建立Flex 工程如下:也就是用两个工具去开发(只用Myeclipse也可以)3,通信方法 在Java里HelloFlex.java:public class HelloFlex public String sayHello(String s)return from java String say:+s;4,在Flex Bulids里面5,Xml文件的配置修改:remoting-config.xml 和services-config.xml com.lch.test.HelloFlex /表示由这个默认的通道去调用Java里面的方法这个通道还要由 services-config.xml 里面定义 6启动Tomcat 至此完成!Flex 对Java的简单数据调用。JDBC连数据库与Flex通信HTTPService数据用XML形式1,jdbc类 在blazeds里面提供一个hsqldb.jar这是一个纯Java写的很小的数据库想研究数据原理的人可以看一下这个Jar包的原码:/ 到这里下载public class ConnectionHelper private static ConnectionHelper instance; /单例模式 private ConnectionHelper() try Class.forName(org.hsqldb.jdbcDriver); catch (ClassNotFoundException e) e.printStackTrace(); public static ConnectionHelper getInstance() if(instance=null) instance=new ConnectionHelper(); return instance; public Connection getConnection(DatabaseVO db) throws java.sql.SQLException try Connection connection = DriverManager.getConnection(jdbc:hsqldb: + db.getPath() + / + db.getName(); return connection; catch (SQLException e) e.printStackTrace(); throw e; 略:/daopublic class ProductService public List getProducts() throws DAOException List list = new ArrayList();Connection c = null;try c = ConnectionHelper.getConnection();Statement s = c.createStatement();ResultSet rs = s.executeQuery(SELECT * FROM product ORDER BY name);while (rs.next() list.add(new Product(rs.getInt(product_id),rs.getString(name),rs.getString(description),rs.getString(image), rs.getString(category), rs.getDouble(price),rs.getInt(qty_in_stock); catch (SQLException e) e.printStackTrace();throw new DAOException(e); finally ConnectionHelper.close(c);return list;/java 的代码就到这里/上面说了用xml作为数据源 下面是用一个JSP文件catalog.jsp%ProductService srv = new ProductService();List list = null;list = srv.getProducts();Product product;for (int i=0; i product productId= 2 Flex main.mxml 代码/ destination=catalog 是proxy-config.xml里面定义的一个标识 / /httpServices 事件驱动是用HttpServices.send() 然后事件返返回的数据(如果是XML的话就用dataProvider获得(srv.lastResult)是得到数据如果是XML的话则.duct表示XML下面的数据)3,配置XML文件咯1,web.xml -略 (请看blazeds 例子里面,或者将其拷到工程里面去)2.services-config.xml 3,在proxy-config.xml (部分略) /context.root/catalog.jspRemoteObject调用底层JAVA数据1,main2.xml 代码/RemoteObject 用destination=product 标识到remoting-config.xml/duct.ProductService在这个XML里有类的引用/说明dataProvider不单有处理XML能力连JAVA集合也可以处理 getProducts是方法名返回List,.lastResult就像将数据序列化一样,其实也转成了XML数据 /触发事件可以直接调用Java方法了哦。返回的数据用dataProvider装2.在remoting-config.xml里配置如下: duct.ProductService /其实DWR 一个JAVA的Ajax插件里面的原理也是用远程调用的。还有最前面的例子也是用事件远程调用一个HelloWorld 的只是用事件返回罢了:而这里的例子是直接放入到里面去了。说明Flex对回调的数很是灵活聊天室与JAVAFlex 实现聊天原理:消息服务的工作原理 使用流通道,那么服务端的响应直到通道关闭才关闭,使得服务端能够发送大量的数据到客户端,HTTP迎接通常不是双向,这意味着使用AMF或者HTTP通道传输数据需要两个HTTP连接完成双向的数据传输,一个链接负责从服务端到客户端的数据传输,另一个负责从客户端到服务端的数据传输,数据传输一完成这两个连接就立刻被释放到浏览器的连接池 轮询通道.如果数据对象不是马上能够获得(一次轮询无法完成传输),一个轮询通道可以配置一简单的间隔。在两种情况下每一次轮询都完成相应的传输请求,游览器的HTTP1.1连接通常缺省是永久的,所以游览器可能会回收现有的HTTP1.1连接来发送的轮询请求,减少了轮询所花费的时间消息终端在messaging-config.xml配置,其中频道(channel)是其关键元素,它用来实现客户端和服务器端交换数据。使用BlazeDS,消息终端通常用作streaming频道或者polling频道。使用streaming频道,服务器端会一直响应HTTP请求直到该频道连接被关闭,它允许服务器向客户端不断传送大量的数据。因为HTTP连接是独一无二的,这实现数据的双向传送,每个streaming AMF或者HTTP频道事实上需要两个浏览器 HTTP连接, 一个连接需要不断处理服务器端与频道紧密相关的客户端的响应。另外需要一个短暂连接,只有当数据需要传送到服务器时,它才脱离浏览器连接池;当短暂连接不再需要时,它立即被释放回浏览器连接池。polling频道可以通过简单的时间间隔或者使用服务器等待来配置,如果数据不马上可用 (长轮循)的话。另外,每次轮循响应完成请求。默认下浏览器HTTP 1.1的连接是持续的,浏览器轮循已有的连接,发送并发的轮循请求,以此来减轻轮循的开销。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 金融科技股权转让与工商变更专业服务合同
- 中学教资ps面试题目及答案
- 新疆哈密石油中学2024-2025学年物理高二下期末教学质量检测试题含解析
- 苏州市重点中学2025届高二化学第二学期期末调研试题含解析
- 云南省玉第一中2024-2025学年生物高二第二学期期末经典试题含解析
- 玉树市重点中学2025届高二下物理期末预测试题含解析
- 盐城市高二学业水平第一次模拟地理试题
- 风能项目场地环境调查与风资源评估合同
- 沧州租赁行业服务协议合同范本
- 浙江省宁波市鄞州区2025年八年级下学期期末数学试题及参考答案
- 幕墙维修使用手册
- SHT+3413-2019+石油化工石油气管道阻火器选用检验及验收标准
- 电场电场强度
- 国开可编程控制器应用形考实训任务二
- 白酒质量要求 第4部分:酱香型白酒
- JT-T-329-2010公路桥梁预应力钢绞线用锚具、夹具和连接器
- 湖北武汉市2024届高三冲刺模拟数学试卷含解析
- 2024年浙江台州椒江区公安局警务辅助人员招聘笔试参考题库附带答案详解
- 广东省广州市天河区2024年八年级下册数学期末考试试题含解析
- 红色大气商务企业启动会企业启动仪式
- 2024年新改版苏教版六年级下册科学全册复习资料
评论
0/150
提交评论