flex与数据库交互

Flex最近学了,但是感觉使用Flex与数据库交互,是可以互相传值调用,但是感觉都是同步的。我的按钮一按,他就响应。我传的也只是一个属性而已,也不是一个model。谁有可以传递一个对象的完整实例?学习!

 

下面这个不是完全懂,谁能给个完整的?

对于建立一个flex web应用的步骤我就不多说了哈。

    首先要求大家到数据库建立一个数据库,在我这例子中数据库名为userDb,建立一个表userInfo,里面设置两个字段一个为id,一个为name.第二,创建以下java代码在src目录下

User.java   
 package  org.rjb.java;   
   
  public   class  User  {   
      private  String name;   
   
       public  String getName()  {   
          return  name;   
     }    
       public   void  setName(String name) {   
          this .name = name;   
     }    
 }    
   
 UserDao.java   
 package  org.rjb.java;   
   
 import  java.sql.Connection;   
 import  java.sql.DriverManager;   
 import  java.sql.ResultSet;   
 import  java.sql.SQLException;   
 import  java.sql.Statement;   
 import  java.util.ArrayList;   
 import  java.util.List;   
   
  public   class  UserDao  {   
        
       public   static  Connection getConnection() {   
         Connection c = null ;   
           try {   
             String driver = " com.mysql.jdbc.Driver " ;   
             String url = " jdbc:mysql://localhost:3306/userDb " ;   
             String username = " root " ;   
             String password = " 1235 " ;   
             Class.forName(driver);   
             c = DriverManager.getConnection(url,username,password);    
          } catch (Exception e) {   
             System.out.println(e.getMessage());   
         }    
          return  c;   
     }    
       public  List getAllUser() throws  SQLException {   
         Connection c = getConnection();   
         Statement st = c.createStatement();   
         ResultSet rs = st.executeQuery( " select * from UserInfo " );   
         ArrayList userList = new  ArrayList < User > ();   
           while (rs.next()) {   
             User u = new  User();   
             u.setName(rs.getString( " name " ));   
             userList.add(u);   
         }    
          return  userList;   
     }    
   
 } 

    以上是java端的全部代码了,下面是flex端的代码。

    第三,创建以下代码在flex_src下:

User.as   
 package  org.rjb.flex   
  {   
     [RemoteClass(alias = " org.rjb.java.User " )]   
      public   class  User   
       {   
          private  var _name:String;   
          public  function User()   
           {   
         }    
           public  function get name():String {   
              return   this ._name;   
         }    
           public  function set name(name:String): void {   
              this ._name = name;   
         }    
     }    
 }   
 
 User.as
 package  org.rjb.flex
  {
     [RemoteClass(alias = " org.rjb.java.User " )]
      public   class  User
       {
          private  var _name:String;
          public  function User()
           {
         } 
           public  function get name():String {
              return   this ._name;
         } 
           public  function set name(name:String): void {
              this ._name = name;
         } 
     } 
 } 

    接下来是mxml代码,也就是我们真正展示我们数据的界面

FlexWithJava .mxml   
 <? xml version="1.0" encoding="utf-8" ?>    
 < mx:Application  xmlns:mx ="http://www.adobe.com/2006/mxml"  layout ="vertical" >    
      < mx:RemoteObject  id ="ud"  destination ="UserDao"  result ="onResult(event)"  fault ="onFault()"   />    
      < mx:DataGrid  dataProvider ="{users}" >    
          < mx:columns >    
              < mx:DataGridColumn  dataField ="name"  headerText ="name"   />    
          </ mx:columns >    
      </ mx:DataGrid >    
      < mx:Label  id ="info"   />    
      < mx:Button  label ="click"  click ="clickFun()"   />    
      < mx:Script >    
          <![CDATA[    
             import mx.collections.ArrayCollection;   
             import mx.rpc.events.ResultEvent;   
             [Bindable]   
             public var users:ArrayCollection=new ArrayCollection();   
             public function clickFun():void{   
                 ud.getAllUser();   
             }   
             public function onResult(event:ResultEvent):void{   
                 users=ArrayCollection(event.result);   
                 info.text="get data successfully";   
             }   
             public function onFault():void{   
                 info.text="Error";   
             }   
          ]]>    
      </ mx:Script >    
 </ mx:Application > 

    第四,配置remoting-config.xml,在里面加上如下配置文件:

 < destination  id ="UserDao" >    
       < properties >    
            < source > org.rjb.java.UserDao </ source >    
       </ properties >    
 </ destination >

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值