`
zouwu85
  • 浏览: 18829 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

flex3+struts2+spring2+hibernate3+mysql(在web项目里面建flex,而不是flex工程)

阅读更多

贴几个重要的文件

1。在原有的web项目中,添加flex步骤:

首先,安装flex插件。详细见http://apps.hi.baidu.com/share/detail/20337120,只到安装即可。

后面建工程就不要了。

2。新建web工程,把struts2+spring2+hibernate3的所有包,和所有配置文件写好。(这个做web开发

的都比较熟悉,在我的包里都有,就不说了)

--------接下来就是添加flex了。

右键点击工程名:如右图

把flex工程加进去,在遇到新增完成的最后一步要记得取消“web.xml”那个选项。不然就覆盖了原来的web.xml了。

3。把blazeds(是在tomcat/webapp/你的项目下,你安装flex插件后,建flex工程时,要用到blazeds.war这个文件,当你启动tomcat的时候会自动生成blazeds文件夹)里面的几个xml文件放到工程里面。如下图

4。修改web-xml文件,加入如下:

 <!-- Http Flex Session attribute and binding listener support -->
 <listener>
  <listener-class>flex.messaging.HttpFlexSession</listener-class>
 </listener>
 <!-- MessageBroker Servlet -->
 <servlet>
        <servlet-name>MessageBrokerServlet</servlet-name>
           <servlet-class>
                flex.messaging.MessageBrokerServlet
        </servlet-class>
        <init-param>
                <param-name>
                        services.configuration.file
                </param-name>
                <param-value>
                        /WEB-INF/flex/services-config.xml
                </param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
        <servlet-name>MessageBrokerServlet</servlet-name>
        <url-pattern>/messagebroker/*</url-pattern>
</servlet-mapping>

5。修改remoting-config.xml(配置flex访问java类的标记)和services-config.xml(配置swf访问路径)

6。建立class文件,注意要有一个flex的映射文件以as结尾。

7。修改mxml文件。我的文件如下:

<?xml version="1.0" encoding="utf-8"?> 
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"  
               xmlns:locdg="com.flex.*" 
               creationComplete="initApp()"
               minWidth="955" minHeight="600"> 
<mx:RemoteObject id="goodsdata" destination="goodsDao" result="onResult(event)" fault="onFault(event)" ></mx:RemoteObject> 
<mx:RemoteObject id="addgoodsdata" destination="goodsDao" result="addResult(event)" fault="addFault(event)" /> 
<mx:RemoteObject id="deletegoodsdata" destination="goodsDao" result="deleteResult(event)" fault="deleteFault(event)" />
<mx:RemoteObject id="updategoodsdata" destination="goodsDao" result="updateResult(event)" fault="updateFault(event)" /> 

<mx:Script>
 <![CDATA[
   import com.shop.flex.GoodsFlex;
   import com.shop.flex.DoubleClickDataGrid;
            import mx.collections.ArrayCollection; 
            import mx.controls.Alert; 
            import mx.managers.CursorManager; 
            import mx.rpc.events.FaultEvent; 
            import mx.rpc.events.ResultEvent;
           
            public var goodsFlex:GoodsFlex = new GoodsFlex(); 
            public var result:Object = new Object(); 
            [Bindable] 
            public var goods:ArrayCollection = new ArrayCollection();
            public function initApp():void{ 
           //   goodsdata.getGoodsList(); 
            }
            public function click_handler(event:Event):void{ 
                CursorManager.setBusyCursor(); 
                info.text = "正在查 询..."; 
                goodsdata.getGoodsList();   
            } 
 
            public function onResult(event:ResultEvent):void{ 
                goods = event.result as ArrayCollection; 
                CursorManager.removeBusyCursor(); 
                if(goods.length==0){ 
                    info.text="取数据成功,为空"; 
                    //Alert.show("取数据成功,为空");
                }else{ 
                    //info.text = " 取数据成功";
                     info.text = "取数据成功";
                } 
             } 
            public function onFault(event:FaultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                info.text="取数据失败";
                 //Alert.show("取数据失败");
            }
           
            public function addgoods_handler(event:Event):void{ 
                if(goodsName.text != ""){ 
                    CursorManager.setBusyCursor(); 
                    goodsFlex.goodsName = goodsName.text; 
                    addgoodsdata.addGoods(goodsFlex); 
                }else{
                 addinfo.text = "没有填写数据";  
                } 
            }
            public function addResult(event:ResultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                goodsdata.getGoodsList(); 
                goodsName.text = ""; 
                //Alert.show("添加成功");
                addinfo.text = "添加成功";
                //              info.text = "取数据成功"; 
            } 
            public function addFault(event:FaultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                addinfo.text = "新增失败"; 
            }

   public function deleteGoods(event:Event):void{
    CursorManager.removeBusyCursor();
    goodsFlex.goodsId = goods_data.selectedItem.goodsId; 
                deletegoodsdata.deleteGoods(goodsFlex); 
   }
   
   public function deleteResult(event:ResultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                goodsdata.getGoodsList();   
                //info.text = "刪除数据成 功"; 
            } 
            public function deleteFault(event:FaultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                //info.text="刪除数据失败"; 
            }
           
             public function updateGoods(event:Event):void{ 
                if(goods_data.selectedItem.goodsName != ""){ 
                    CursorManager.setBusyCursor(); 
                    info.text = "正在 更新..."; 
                    goodsFlex.goodsId = goods_data.selectedItem.goodsId; 
                    goodsFlex.goodsName = goods_data.selectedItem.goodsName; 
                    updategoodsdata.updataGoods(goodsFlex); 
                } 
            }
           
             public function updateResult(event:ResultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                goodsdata.getGoodsList();  
                info.text = "修改数据成功"; 
            } 
            public function updateFault(event:FaultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                info.text="修改数据失败"; 
            }

 

 ]]>
</mx:Script>
 <mx:DataGrid dataProvider="{goods}" width="400" id="goods_data"
 fontSize="12" borderStyle="inset" fontWeight="bold" textAlign="center" alternatingItemColors="[#F1B6B6, #F2EB37]" height="210" editable="true">
   <mx:columns> 
     <mx:DataGridColumn headerText="ID号" dataField="goodsId" editable="false"/> 
             <mx:DataGridColumn headerText="账号" dataField="goodsName" editable="true"/>
            
             <mx:DataGridColumn headerText="修改" width="50" editable="false">
                 <mx:itemRenderer>
                  <mx:Component>
                   <mx:LinkButton toolTip="修改" click="outerDocument.updateGoods(event)" icon="@Embed('icon_06.gif')">    
                   </mx:LinkButton>
                  </mx:Component>
                 </mx:itemRenderer>
              
             </mx:DataGridColumn>
            
             <mx:DataGridColumn headerText="删除" width="50" editable="false">
                 <mx:itemRenderer>
                  <mx:Component>
                   <mx:LinkButton toolTip="删除" click="outerDocument.deleteGoods(event)" icon="@Embed('icon_03.gif')">    
                   </mx:LinkButton>
                  </mx:Component>
                 </mx:itemRenderer>
              
             </mx:DataGridColumn>
       </mx:columns>
    </mx:DataGrid>
    <mx:Button x="491" y="189" label="取数据" click="click_handler(event)" /> 
    <mx:Text x="606" y="189" id="info" text="点击按钮取数据"/> 

    <mx:Form x="163" y="72" borderStyle="solid" > 
        <mx:FormItem label="用户名" borderStyle="solid"> 
            <mx:TextInput id="goodsName" /> 
        </mx:FormItem> 
    </mx:Form> 
    <mx:Button x="444" y="100" label="添 加" click="addgoods_handler(event)"/>
    <mx:Text x="544" y="100" width="100" height="40" id="addinfo" text="请添加"/>
</mx:Application> 
实现了增删改查的所有功能。如下图

我把工程放在文件下载里,lib比较大分4个rar放的,不明白联系QQ:654865674

  • 大小: 12.7 KB
  • 大小: 10.5 KB
  • 大小: 25.3 KB
  • lib.rar (3.6 MB)
  • 下载次数: 253
分享到:
评论
7 楼 qiyueguxing 2011-03-18  
标题有点吓人,讲的就是flex bds 用法。
6 楼 elvishehai 2011-03-18  
放在一个文件里吧,这样看很晕呀,
5 楼 chrislee1982 2011-03-18  
晕!!
使用blazeds作远程访问,竟然是直接调用Dao?!
另外,如果使用了blazeds的话,根本没必要使用struts2了
楼主快改标题吧,免得被人笑死!
4 楼 rekoe.net 2011-03-18  
哪里看到有sping的事!
3 楼 s929498110 2011-03-18  
flex感觉不好用
我学了一段时间, 感觉除了对编程人员有好感外
对于用户,系统神马的都没有太大的用处, 在中国的网络上是不是flash更多啊?
flex刚出确实让编程人员耳目一新,比flash简单太多了,好感期一过,就各种问题出现
2 楼 hellostory 2011-03-18  
这排版让人没有继续看下去的欲望...
1 楼 java_xiaoyi 2011-03-18  
排版不咋的。。。。

相关推荐

    MyEclipse7.5+flex4+spring+struts+hibernate+blazeds整合

    完成以上步骤后,你将拥有一个能够实现前后端交互的完整系统,Flex作为富客户端展示数据,而Spring、Struts和Hibernate在后台处理业务逻辑和数据访问。Blazeds作为中间件,使得Flex与Java的通信变得高效和便捷。 ...

    Flex_Struts2_Spring_Hibernate_Mysql_Login(annotation方式)

    多框架搭建系统平台(采用annotation方式): Flex+Blazeds+Spring+Hibernate(Flex调用java查询后台数据) JSP+Struts+spring+Hibernate(完成用户登录) 共同搭建系统

    Myeclipse8.5+flex4.5+Blazeds+SSH环境搭建

    4. **SSH(Spring、Struts、Hibernate)**:SSH 是一套流行的企业级 Java 开发框架组合,Spring 提供了依赖注入和面向切面编程,Struts 是一个 MVC 框架,用于处理 HTTP 请求,Hibernate 是一个对象关系映射(ORM)...

    SSH+Flex项目

    SSH+Flex项目是一种基于Flex前端和SSH2(Spring、Struts2、Hibernate)后端框架的开发模式,结合MySql数据库,实现了一套完整的Web应用系统。这种模式常用于构建功能丰富的交互式用户界面,同时提供了强大的数据管理...

    flex3读书笔记----flex整合hibernate

    10. **Flex 项目创建**: 在FlexBuilder 3中创建Flex项目,选择J2EE作为后台类型,将Flex项目与已部署在Tomcat的Web项目关联,以实现Flex与Java服务的交互。 11. **Hibernate 配置**: 包括创建数据库、表,导入MySQL...

    整合Flash Builder4.0+MyEclipse 8.6+BlazeDS+Sping 3.0+Hibernate3.3+MySQL5.5+Tomcat+JDK1.6.docx

    这篇文档涉及的是一个基于Java和Flex的Web应用开发集成环境的搭建过程,主要涵盖了以下知识点: 1. **开发工具和框架**: - **Flash Builder 4.0**:Adobe Flash Builder是一个集成开发环境(IDE),用于构建使用...

    struts,spring,hibernate.jar 包大全(五)

    Struts、Spring 和 Hibernate 是Java开发中非常重要的三个框架,它们在构建企业级Web应用程序时起着关键作用。本篇文章将详细介绍这三个框架的核心概念、功能以及相关库。 首先,Struts 是一个MVC(Model-View-...

    java-flex-mysql

    在IT行业中,Java、Flex和MySQL是三种非常重要的技术,它们常常被组合使用来构建功能丰富的Web应用程序。这里我们深入探讨一下"java-flex-mysql"这个主题,它涉及到的是一套基于Java后端、Flex前端和MySQL数据库的...

    SSH2项目(WeExam)源码

    WeExam=UML(Rose)+Struts2.1.8+Spring2.5+Hibernate3.5+Junit+Mysql 大量使用了Hibernate和Spring的注解 配置步骤: 安装Tomcat及Mysql后: 1、新建WeExam的数据库 2、修改src/jdbc.properties内的连接参数,及...

    计算机java工程师的求职简历.pdf

    2.Spring+Struts+Hibernate(SSH)三大开源框架 3.熟悉各种常见的设计模式 4.熟悉SQLServer, MySQL了解Oracle等关系数据库编程技术 5.熟悉WEB服务器Tomcat,Jboss,IDE工具Eclipse等 6.掌握XML语言、Flex、UML图、CVS...

    公司人事管理系统(ss2h)

    系统基于SSH(Struts2、Spring、Hibernate)技术栈构建,前端采用Flex4进行用户界面设计,后端数据库则选择了MySQL,这是一套成熟且广泛应用的开源技术组合。 1. **SSH框架**:SSH是Java Web开发中的三大框架,...

    Flex上传压缩文件到服务器路径并解压存进数据库

    在IT行业中,文件上传是常见的应用场景之一,尤其是在Web开发中。本示例的主题“Flex上传压缩文件到服务器路径并解压存进数据库”涉及到的技术主要包括Flex客户端开发、服务器端处理、文件上传、文件压缩与解压以及...

    软件开发工程师及其相关行业

    此外,他还熟悉多种流行的技术框架,如Struts 1.x/2.x、Spring、SpringMVC、Hibernate和iBatis,这些都是Java企业级开发的常用工具。Spring框架提供依赖注入和面向切面编程,简化了代码结构和管理;Hibernate作为...

    基于Flex和Java的考试车辆管理系统.zip

    此外,Spring MVC或Struts2可能用于构建模型-视图-控制器(MVC)架构,提高代码的可维护性和可扩展性。 3. **数据库管理** 考试车辆管理系统通常需要存储大量考试信息、车辆状态、驾驶员详情等数据。因此,系统...

    java 工程师简历

    在项目开发中,他熟练运用了一系列关键技术和工具,如Struts、Spring、Hibernate(SSH整合)、Log4J、JDom、Memcache、Quartz、jQuery、JSON等,尤其在SSH框架的集成开发上表现出色,能够实现高用户体验的AJAX效果。...

    非常经典java求职简历.docx

    - Spring、Hibernate、Struts:三大主流Java Web开源框架,Spring负责业务控制,Hibernate处理数据持久化,Struts在服务器端传递信息。 - Flex、Jxl、JFreeChart:Flex用于富客户端应用,Jxl处理Excel数据,...

    参考简历模板三.doc

    - **项目技术**:Struts2 + Spring2.5 + Hibernate3 + POI + YUI + OGNL + Flex + 3D + PDA(C++) - **生产环境**:Linux + Tomcat6 - **项目描述**:该项目旨在实现物流信息的代码化、数据库化,提高物流信息处理的...

    WEB工程师个人简历表.doc

    - **编程语言与框架**:C++、VC#.NET、J2EE、Spring、Struts、Hibernate (SSH)、Java、ACE 网络编程 - **操作系统**:Linux - **多媒体技术**:DirectShow、Flash ActionScript、PHP JSON - **数据库管理系统**:...

    非常经典java求职简历三套含项目介绍.pdf

    SSH是Java Web开发的常见组合,Struts处理请求,Spring管理依赖,Hibernate负责持久化。 - **博鑫汽车贸易有限公司OA系统**:同样基于SSH框架,实现了办公自动化功能,如公文流转、权限系统等。在此项目中,开发者...

    非常经典java求职简历.pdf

    - 此外,还提及了`JSF`, `J2EE`, `Flex`, `Jxl`, `JFreeChart`, `Structs`, `Struts2`, `DWR`, `T-Sql`, `SqlServer`, `MySql`, `MVC模式`, `工厂模式`, `核心工厂`, `Adapter适配器`等,这些技术在Java后端开发中...

Global site tag (gtag.js) - Google Analytics