整合Flex+struts+BlazeDS+tomcat+mysql
Flex 技术是一种完善的 RIA 技术,因此与 web 系统之间必然存在着千丝万缕的联系。随着 RIA 技术的不断成熟,现在越来越多的 java 开发者喜欢将其整合到企业级应用之中。本文是在项目:快速开发平台基础之上的一点学习心得与体会。主要从一下几个方面介绍: 1. Flex 开发模型的介绍 Flex 作为开发网络程序的一种技术,支持框架技术,完全支持 MVC 构建,我们可以使用其构建单一的表示层,也可以使用其面向对象的 AS 语言和 Flex 数据服务,构建程序的业务层和数据持久层。 Flex 的编译原理就是通过把 MXML 文件转换成面向对象的 AS 类,然后结合程序中指定的图片和声音等一些信息,统一编译成 SWF 文件。 ??????? 系统运行后,当用户打开此网页的时候将下载 SWF 文件到 PC 机的内存中,这样在以后的交互中系统将只是传输关键的信息,不用刷新整个页面,提高了网络交互的速率。
LCDS(LiveCycle Data Service)之前叫做FDS(Flex Data Service),他是基于java(也有ColdFusion版的)后端的数据服务工程,功能包括映射Java对象到Flex对象(包括调用Java类 的方法)、RTMP(Real Time Message Protocol)、代理、服务端生成PDF等等功能,详细请参考 LCDS里的说明。官方有下载,需要注册会员(免费)。 LCDS实际是付费的,但是免费也能使用,似乎是少了多CPU的支持。当然还有一些其他的数据服务,比如AMFPHP之类的。当然,LCDS提供的 功能我们都能自己实现,并非Flex脱离了LCDS就不能和后台打交道了,除了RemoteObject还有WebSerivce、 HTTPService等等。只是说,LCDS提供了更多的方便和特性。 ?????? 3、系统平台的构建 ????????? 我采用的平台是JDK1.5+XP+Tomcat6.0,开发工具是flex插件+myeclipse6.0+struts+BlazeDS. ??????? 各个工具的安装比较简单,但是注意flex插件在myeclipse中的安装需要简单的配置。BlazeDS.我下载的是blazeds_turnkey_3-0-0-544。 ??????? 3.1. 新建FlexLCDS工程 ????????????? ???? File -> new -> Flex Project ... ????????????? ???? 注:以下设置绝大多数都可以在项目属性中可以修改。 1). 向导界面1 ?
? 其中Targetruntime需要自己配置。 3、按next最后生成的结构图如下: 最后就是发布到服务器中,如图所示:
4、flex与java的交互,主要是配置文件remoting-config.xml。本文的主要配置如下代码所示: <? xml version = "1.0" encoding = "UTF-8" ?> < service id = "remoting-service" ??? class = "flex.messaging.services.RemotingService" > ??? < adapters > ??????? < adapter-definition id = "java-object" class = "flex.messaging.services.remoting.adapters.JavaAdapter" default = "true" /> ??? </ adapters > ??? < default-channels > ??????? < channel ref = "my-amf" /> ??? </ default-channels > ???? ??? < destination id = "FirstJavaClassRemoteObject" > ????? < properties > ?????? < source > com.test.FirstJavaClass </ source > ?????? < scope > application </ scope > ?????? </ properties > ??? </ destination > ??? < destination id = "UserServiceOblect" > ????? < properties > ???????? < source > com.test.UserService </ source > ????? </ properties > ??? </ destination > </ service > (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |