快速业务通道

大型AS编程经验之谈

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-13


用action script RIA开发也有很久了。主要谈谈对Flash RIA架构的数据交互的经验和想法。 最开始的时候,是使用的flash+XML的方式进行交互。这种方式 是目前常见的,不过过于低级。 开发小于50个表的系统时候 还可以忍受。但是 如果开发大型的系统。每次 数据交互的时候都要写对应的 加标签和解析标签的,写了xml2Table效果也不大好。太繁琐了。感觉开发完全成了体力劳动。 后来,开始了flash remoting和 axis web services的开发,终于让体力劳动结束了。不过 感觉 flash remoting的效率高一些[二进制数据]。在系统开放性和系统效率 之间我选择了系统效率。
还有一个原因是axis在jbuilder下发布很方便。但是eclipse下没有找到那么好的插件,手工部署。而我又对jbuilder不感冒。所以青睐remoting的简单。 在于客户端的数据交互的时候,最开始,remoting提供了一个RecordSet,DataGlue,可以通过此 绑定在 mm的各种控件上,这样做好像开发效率很高,也是mm推崇的方式。 但是开发时也遇到了问题:
1 mm的v2控件是十足的体积杀手[swf体积快速变大]。
2 本着mm提供的dataSet,需要 服务器端提供一个不占连接的 DataSet, 这个DataSet应该是类似ASP.net提供的那些 DataTable,而且可以兼容xml格式的DataSet, 而jdbc中常见的只有一个不争气的resultSet,rowset也不尽人意。以前我就打算自己开发一个这样的dataset,但是在sun上说jdbc4.0马上就出来了。我就忍了。可是2年过去了还是没出来。 后来我的解决办法是:
1 我们team自己开发了一套控件来替代mm的控件。
2 自己写了DataTable,xml2Table,Xml2Object等DataSet类来交互。
这个时候,但是自己写的DataSet并没有 得到太大的应用。因为我们马上采用了hibernate。在客户端,我们也写了对应的POJO的 AS类。因此,客户端面对的是对象,不是Table,Array,Item这些东西了。在这种方式下,终于解决了困扰已久的问题,服务器端和客户端基本上都是完全的OO,整个一个C/S的开发方式。大型的程序 都可以系统地开发了。 我们的最终架构:
flash: MVC (M: AS DAO ;V: UIObject;C[system logic])
Java: remote inferface+ business logic+ ORM+DB 当然,因为速度上的考虑。有些地方没有像hibernate纯OO。还是用了比较脏的方式。当然项目开发就是这样。平衡胜于完美,可能以后会用ibatis吧。 再说一句,我对 Laszlo和flex一点都不看好,他让web开发又回到了JSP 时代.总体来说,struts,webwork不会马上应用到flash ria的。而且从longhorn的角度来说,以后没有c/s和b/s,只有c/s就是b/s了。 关键词:

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号