Flex 4 最佳集成实践

上传人:人*** 文档编号:563870227 上传时间:2023-09-03 格式:DOC 页数:17 大小:93KB
返回 下载 相关 举报
Flex 4 最佳集成实践_第1页
第1页 / 共17页
Flex 4 最佳集成实践_第2页
第2页 / 共17页
Flex 4 最佳集成实践_第3页
第3页 / 共17页
Flex 4 最佳集成实践_第4页
第4页 / 共17页
Flex 4 最佳集成实践_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《Flex 4 最佳集成实践》由会员分享,可在线阅读,更多相关《Flex 4 最佳集成实践(17页珍藏版)》请在金锄头文库上搜索。

1、Fl 4 最佳集成实践 苏春波,高级软件工程师, P苏春波,有 7 年 ava EE开发经验,对Jva 开源框架有一定的研究。简介:Flex 受到越来越多人的青睐,同时一些问题也涌现出来了,比如,代码结构,不同层间的信息交换不是很清晰等,使后期维护成本升高。本文将通过具体实例来解决这些问题。前言对于一个 eb 软件项目而言,实现客户需要的基本功能往往是最基本的需求,随着软件的进一步发展和人们审美水平的逐步提高,客户已经不仅仅只是能满足功能性需求那么简单了,他们有了进一步的追求,呵呵,功能不但要强大,而且还要有漂亮、易于操作,甚至是能减少视觉疲劳的界面,这样一来一大群 UI 设计者如雨后春笋般应

2、势而生,UI也变得复杂起来了。软件的生命周期因此而有小幅增长,“天空一声霹雳响,诞生 Flex 来帮忙”借用一下顺溜里面的一句话,ex 的出现是软件开发者的福音,用它设计的界面不但绚丽多彩而且开发起来也相对简单,不但能缩短软件开发周期,还能给用户有一种好的视觉享受。Fx 新特性总结了一下 Fex4 的新特性,有助于用户更好的使用,理解它。)代码模板虽然现在我们也可以通过插件来实现代码模板,但是总还是原生支持来的更舒服.代码模板还支持“环境变量”,例如你可以向模板中添加“$pect_name”,则这部分内容会被转化成工程名称.代码模板可以在偏好 (Prefence)中进行配置。 2)悬停时的 A

3、SDc 提示 也是从 Eclise 中“继承下来的功能,支持 ADo 中的链结 3)Getter Setter 方便地在代码中添加 Geter 和tter。(这里有个小插曲,Hed在演示前忘了把代码恢复成没有 Seter 的状态,所以她不得不现场把代码改回去,还很可爱的对观众们说“别看” )。 4)自动生成vent Hanle 这个功能比用代码模板要方便得多。5) 包重构重构功能一直是我对 Fex Blr 比较不满意的地方。说实话,基于包的重构应该是比较基本的功能了。 6) Ru to Line 有的时候我们调试时会发现断点设置的并不合理,例如断点位置离我们关注的代码段还远得很,这时候可以使用

4、 Ruto Lin 功能立刻将程序执行到指定位置. 条件断点顾名思义,就是当满足某种条件的时候才会中断程序,个人认为非常有用,特别是在调试一些复杂逻辑时,会大大节约时间,同时也能放松你的神经,免得一不注意错过了还要从头来过。 7)Network onitor现在调试模式下可以监控网络连接的数据,例如we rvces 的SO 数据以及HTP 的请求和响应内容,也是一个非常有用的特性。 ) ckg Expe 如果你熟悉 lpse 中 JDT,对这个特性一定不陌生。Fleuildr 3 只支持资源浏览器,即以工程文件的形式浏览。而 PackaeElrer,顾名思义,是针对kage 的结构进行浏览,这

5、种模式更适于开发者使用,另外也可以展开一个类来浏览该类的结构(同 Outlin).不仅如此,ackageExr还支持以这种结构浏览 SW 文件。9)Seric Exlrer Sricexplorr 可以方便的浏览服务端 API( 如 ebervies或 Remotigervic)及其 Va Objec,同时也可以根据服务端的V 自动创建 AS 端的 VO。概要介绍本文通过具体实例来讲解Fl 4 与当前流行框架的集成过程,首先介绍的是与 BlazeDS 的集成,然后讲解与 Spng,Hibernate,reVC 的集成过程,这些框架都是我经过实践和研究过的,可以说它们与 lex 4 的集成堪称完

6、美,把项目的层次分的很清楚,在可以大大的缩短项目周期的同时还能有利于后期的项目维护,职责分明,易于理解.基本开发环境1. 下载开发 Fex 的SDK :(注意:是 fxsk); 2. Flex SK下载完后点击安装文件开始安装,安装完后激活即可使用; 3. 安装 e 环境,将下载的 Apache-Tocat6.0。1 解压到指定目录,如:toma6;4. 下载Sring Famewr:; 5. 下载 BaeDS: 下面就进入愉快的开发过程。初识Fex 4新建一个 f roect,命名为 lePojectorIBM, Flex erin 选择Fe 4。1(一定是 4 以上的版本,版本 和4 有很

7、多差别的),其他选项默认即可,ain sue flder 选择默认,Ott folder 为 indebug, Oupt for UL 为 , 规则为服务器地址加上工程名称,之所以是工程名称是因为我们以工程名称为包名部署到服务器中的,然后我们编辑flexPojectFor.mxml 文件,增加一个 abel,一个输入框,一个按钮,lel 文本内容为“请输入员工姓名”,按钮命名为“查询”,然后我们在浏览器中输入 , 我们就可以看到应用的主页了,主页内容显示如下:图1ex UFlexpojt 我们已经成功部署到服务器。下面我们看下 Flex 是 怎样与 BlazeS 集成的.Flex 与 Blae

8、DS 集成首先我们修改 web.x 文件,增加一个监听,内容见清单1,一个 Servlet,内容如清单2 所示:清单 1。 增加的监听 listnercasfl.essai.HtxSessioiteerlss /lister 清单 2。增加的 ervlet serl init-param ram-nameervics.confiuratio。 a-valu/WEBINF/flex/servescnfigxl/rvale /initparam 1/lod-on-startup /servet MessageokrSrve/servle-name l-attern/mesgebroker*rpat

9、ern /servletmping 然后将blazed.a解压到某个目录下,将 WEB-IF 下的 flex 和 lib目录复制到flxProjetBM 的 WEBINF下面,flex 目录下面包括4 个文件,分别是messageg-conf.xml,proy-onfig。,eotingonfigxl,sevicescofg.l,建议不要修改这 个文件的名称,他们的具体作用可以参考 BlazeDS 的官方文档,这里不再描述了。下面新建一个 ja pre 取名为 sevieProectFrM, 然后新建一个接口HlloWrl,并新建一个方法 saHlloToomeon,新建一个 elloorl

10、的实现类 Hellodl,实现 sayHelloTomene 方法,如清单 3 所示:清单 3saHeloTSomeone 实现方法 pckge org.i.lxervceimpl; impot rg。bm。flex.servicelloWorld; blc clsHelloWodImp imlemet Heloorld Override lc StingsayHeloToSomeone(trigne) rturn ”ello +nam; 后台的服务已经开发完毕,然后我们打成一个erieorlex。 包放到上面的 lexProjectFrIBM 工程的WR 包里面。然后我们在修改下 lexro

11、jectFoIBM。ml 文件,增加 4个标签,一个输入框和一个命令按钮,详细命名与布局见清单4 所示:清单4与 BlazeD集成的 变化 mx:uttn x=324” y=103” label=Cal rmote meth” cickreotingSayHello(even);”/ :TextInput x=148 =”03 =iNae/ mx:Labex=98” ”105 text=”nam:/ m:Le tx=s.sayHeloToSomee.lasRsut” x=”52 y=”162” width=”448” hh=”1” id=lblVie olor=FEE09 fontize2 f

12、nteigh=od textDcratin=uerlne” fntStle=normal/ s:abel x=54”y=87” txt=Remevitet:”/ s:elx4”y=12 tex=Reotemethod ret:” widh3/注意一下 lblVew 的 text值的设置。我们这时候会发现清单 4 中的remtgSello方法在上面也没有定义呀,你说对了,下面我们看下 emtingayello 方法的定义,这是一个调用远程服务的方法,具体内容见清单 所示:清单. reotingSayello内容x:Script !CDAftion reotigSaylo(evet:Event):void var iname:Strigime.text; sa。sHloSm

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号