`
lyric1812
  • 浏览: 7080 次
  • 性别: Icon_minigender_1
  • 来自: 济南
最近访客 更多访客>>
社区版块
存档分类
最新评论

flex与java实现增删改查

阅读更多

用的是MySQL数据库。

1,建一个userdb库,再建userinfo表,字 段:id(int),username(varchar),password(varchar)。


view plaincopy to clipboardprint?
create database userdb; 
use userdb; 
create table userinfo( 
id int(10) not null auto_increment, 
username varchar(20), 
password varchar(20), 
primary key(id)); 
  create database userdb;  use userdb;  create table userinfo(  id int(10) not null auto_increment,  username varchar(20),  password varchar(20),  primary key(id));
2,DBConnection.java

view plaincopy to clipboardprint?
package com.datainfo; 
 
import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.SQLException; 
 
public class DBConnection { 
    public static Connection getConnection() throws ClassNotFoundException, 
            SQLException { 
        Connection conn = null; 
        String driver = "com.mysql.jdbc.Driver"; 
        String url = "jdbc:mysql://localhost:3306/userdb"; 
        String username = "root"; 
        String password = "mysql"; 
        Class.forName(driver); 
        conn = DriverManager.getConnection(url, username, password); 
        return conn; 
    } 

package  com.datainfo;  import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException;  public class DBConnection { public static Connection getConnection() throws ClassNotFoundException, SQLException { Connection conn = null; String driver = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://localhost:3306/userdb"; String username = "root"; String password = "mysql"; Class.forName(driver); conn = DriverManager.getConnection(url, username, password); return conn; } }
3,User.java

view plaincopy to clipboardprint?
package com.datainfo; 
 
public class User { 
    private int id; 
    private String username; 
    private String password; 
 
    public User() { 
         
    } 
 
    /**
     * @return the id
     */ 
    public int getId() { 
        return id; 
    } 
 
    /**
     * @param id
     *            the id to set
     */ 
    public void setId(int id) { 
        this.id = id; 
    } 
 
    /**
     * @return the username
     */ 
    public String getUsername() { 
        return username; 
    } 
 
    /**
     * @param username
     *            the username to set
     */ 
    public void setUsername(String username) { 
        this.username = username; 
    } 
 
    /**
     * @return the password
     */ 
    public String getPassword() { 
        return password; 
    } 
 
    /**
     * @param password
     *            the password to set
     */ 
    public void setPassword(String password) { 
        this.password = password; 
    } 

package  com.datainfo;  public class User { private int id; private String username; private String password;  public User() { }  /** * @return the id */ public int getId() { return id; }  /** * @param id *            the id to set */ public void setId(int id) { this.id = id; }  /** * @return the username */ public String getUsername() { return username; }  /** * @param username *            the username to set */ public void setUsername(String username) { this.username = username; }  /** * @return the password */ public String getPassword() { return password; }  /** * @param password *            the password to set */ public void setPassword(String password) { this.password = password; } } 
4,UserDAO.java

view plaincopy to clipboardprint?
package com.datainfo; 
 
import java.sql.Connection; 
import java.sql.PreparedStatement; 
import java.sql.ResultSet; 
import java.sql.SQLException; 
import java.sql.Statement; 
import java.util.ArrayList; 
 
import com.datainfo.DBConnection; 
 
public class UserDAO { 
    public ArrayList getUserList() throws ClassNotFoundException, SQLException { 
        Connection conn = DBConnection.getConnection(); 
        Statement stmt = conn.createStatement(); 
        ResultSet rs = stmt.executeQuery("select * from userinfo"); 
        ArrayList userList = null; 
        try { 
            userList = new ArrayList(); 
            while (rs.next()) { 
                User user = new User(); 
                user.setId(rs.getInt("id")); 
                user.setUsername(rs.getString("username")); 
                user.setPassword(rs.getString("password")); 
                userList.add(user); 
            } 
            rs.close(); 
            stmt.close(); 
            conn.close(); 
        } catch (Exception e) { 
            // TODO Auto-generated catch block 
            e.printStackTrace(); 
        } 
        return userList; 
    } 
 
    public void addUser(User user) throws ClassNotFoundException, SQLException { 
        Connection conn = DBConnection.getConnection(); 
        String sql = "insert into userinfo (username,password) values (?,?)"; 
        try { 
            PreparedStatement pstmt = conn.prepareStatement(sql); 
            pstmt.setString(1, user.getUsername()); 
            pstmt.setString(2, user.getPassword()); 
            pstmt.executeUpdate(); 
            pstmt.close(); 
            conn.close(); 
        } catch (Exception e) { 
            // TODO Auto-generated catch block 
            e.printStackTrace(); 
        } 
    } 
 
    public void updataUser(User user) throws ClassNotFoundException, 
            SQLException { 
        Connection conn = DBConnection.getConnection(); 
        String sql = "update userinfo set username=?,password=? where id=?"; 
        try { 
            PreparedStatement pstmt = conn.prepareStatement(sql); 
            pstmt.setString(1, user.getUsername()); 
            pstmt.setString(2, user.getPassword()); 
            pstmt.setInt(3, user.getId()); 
            pstmt.executeUpdate(); 
            pstmt.close(); 
            conn.close(); 
        } catch (Exception e) { 
            // TODO Auto-generated catch block 
            e.printStackTrace(); 
        } 
    } 
 
    public void deleteUser(User user) throws ClassNotFoundException, 
            SQLException { 
        Connection conn = DBConnection.getConnection(); 
        String sql = "delete from userinfo where id =?"; 
        try { 
            PreparedStatement pstmt = conn.prepareStatement(sql); 
            pstmt.setInt(1, user.getId()); 
            pstmt.executeUpdate(); 
            pstmt.close(); 
            conn.close(); 
        } catch (Exception e) { 
            // TODO Auto-generated catch block 
            e.printStackTrace(); 
        } 
    } 

package  com.datainfo;  import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList;  import com.datainfo.DBConnection;  public class UserDAO { public ArrayList getUserList() throws ClassNotFoundException,  SQLException { Connection conn = DBConnection.getConnection(); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("select * from userinfo"); ArrayList userList = null; try { userList = new ArrayList(); while (rs.next()) { User user = new User(); user.setId(rs.getInt("id")); user.setUsername(rs.getString("username")); user.setPassword(rs.getString("password")); userList.add(user); } rs.close(); stmt.close(); conn.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return userList; }  public void addUser(User user) throws ClassNotFoundException,  SQLException { Connection conn = DBConnection.getConnection(); String sql = "insert into userinfo (username,password) values (?,?)"; try { PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setString(1, user.getUsername()); pstmt.setString(2, user.getPassword()); pstmt.executeUpdate(); pstmt.close(); conn.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }  public void updataUser(User user) throws ClassNotFoundException, SQLException { Connection conn = DBConnection.getConnection(); String sql = "update userinfo set username=?,password=? where id=?"; try { PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setString(1, user.getUsername()); pstmt.setString(2, user.getPassword()); pstmt.setInt(3, user.getId()); pstmt.executeUpdate(); pstmt.close(); conn.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }  public void deleteUser(User user) throws ClassNotFoundException, SQLException { Connection conn = DBConnection.getConnection(); String sql = "delete from userinfo where id =?"; try { PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setInt(1, user.getId()); pstmt.executeUpdate(); pstmt.close(); conn.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } } 
5,配置文件remoting-config.xml

view plaincopy to clipboardprint?
<?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="userDao"> 
        <properties> 
            <source>com.datainfo.UserDAO</source> 
        </properties> 
    </destination> 
</service> 
<?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="userDao"> <properties> <source>com.datainfo.UserDAO</source> </properties> </destination> </service>
6,以下是flex端,UserFlex.as

view plaincopy to clipboardprint?
package com.flex 

    [Bindable] 
    [RemoteClass(alias="com.datainfo.User")] 
    public class UserFlex 
    { 
//      public function UserFlex{ 
//           
//      } 
        public var id:int; 
        public var username:String; 
        public var password:String; 
//      如果用private,就需要写上get/set 
//       
//      public function get id():int{ 
//          return this.id; 
//      } 
//      public function set id():int{ 
//          this.id = id; 
//      } 
//       
//      public function get username():String{ 
//          return this.username; 
//      } 
//      public function set username():String{ 
//          this.username = username; 
//      } 
//       
//      public function get password():String{ 
//          return this.password; 
//      } 
//      public function set password():String{ 
//          this.password = password; 
//      } 
    } 

package  com.flex { [Bindable] [RemoteClass(alias="com.datainfo.User")] public class UserFlex { // public function UserFlex{ // // } public var id:int; public var username:String; public var password:String; // 如果用private,就需要写上get/set // // public function get id():int{ // return this.id; // } // public function set id():int{ // this.id = id; // } // // public function get username():String{ // return this.username; // } // public function set username():String{ // this.username = username; // } // // public function get password():String{ // return this.password; // } // public function set password():String{ // this.password = password; // } } }
7,自定义的DataGrid组件,用以双击修改数据DoubleClickDataGrid.as

view plaincopy to clipboardprint?
package com.flex 

    import flash.events.MouseEvent; 
    import mx.controls.DataGrid; 
    import mx.controls.dataGridClasses.DataGridColumn; 
    import mx.controls.listClasses.IDropInListItemRenderer; 
    import mx.controls.listClasses.IListItemRenderer; 
    import mx.core.EventPriority; 
    import mx.events.DataGridEvent; 
     
     
    public class DoubleClickDataGrid extends DataGrid 
    { 
        public function DoubleClickDataGrid() 
        { 
            //TODO: implement function 
            super(); 
            doubleClickEnabled = true; 
        } 
        override protected function mouseDoubleClickHandler(event:MouseEvent):void 
        { 
            var dataGridEvent:DataGridEvent; 
            var r:IListItemRenderer; 
            var dgColumn:DataGridColumn; 
             
            r = mouseEventToItemRenderer(event); 
            if (r && r != itemEditorInstance) 
            { 
                var dilr:IDropInListItemRenderer = IDropInListItemRenderer(r); 
                if (columns[dilr.listData.columnIndex].editable) 
                { 
                    dgColumn = columns[dilr.listData.columnIndex]; 
                    dataGridEvent = new DataGridEvent(DataGridEvent.ITEM_EDIT_BEGINNING, false, true); 
                    // ITEM_EDIT events are cancelable 
                     
                    dataGridEvent.columnIndex = dilr.listData.columnIndex; 
                    dataGridEvent.dataField = dgColumn.dataField; 
                    dataGridEvent.rowIndex = dilr.listData.rowIndex + verticalScrollPosition; 
                    dataGridEvent.itemRenderer = r; 
                    dispatchEvent(dataGridEvent); 
                } 
            } 
             
            super.mouseDoubleClickHandler(event); 
        } 
         
        override protected function mouseUpHandler(event:MouseEvent):void 
        { 
            var r:IListItemRenderer; 
            var dgColumn:DataGridColumn; 
             
            r = mouseEventToItemRenderer(event); 
            if (r) 
            { 
                var dilr:IDropInListItemRenderer = IDropInListItemRenderer(r); 
                if (columns[dilr.listData.columnIndex].editable) 
                { 
                    dgColumn = columns[dilr.listData.columnIndex]; 
                    dgColumn.editable = false; 
                } 
            } 
             
            super.mouseUpHandler(event); 
             
            if (dgColumn) 
                dgColumn.editable = true; 
        } 
         
    } 

package  com.flex { import flash.events.MouseEvent; import mx.controls.DataGrid; import mx.controls.dataGridClasses.DataGridColumn; import mx.controls.listClasses.IDropInListItemRenderer; import mx.controls.listClasses.IListItemRenderer; import mx.core.EventPriority; import mx.events.DataGridEvent; public class DoubleClickDataGrid extends DataGrid { public function DoubleClickDataGrid() { //TODO: implement function super(); doubleClickEnabled = true; } override protected function  mouseDoubleClickHandler(event:MouseEvent):void { var dataGridEvent:DataGridEvent; var r:IListItemRenderer; var dgColumn:DataGridColumn; r = mouseEventToItemRenderer(event); if (r && r != itemEditorInstance) { var dilr:IDropInListItemRenderer = IDropInListItemRenderer(r); if (columns[dilr.listData.columnIndex].editable) { dgColumn = columns[dilr.listData.columnIndex]; dataGridEvent = new  DataGridEvent(DataGridEvent.ITEM_EDIT_BEGINNING, false, true); // ITEM_EDIT events are cancelable dataGridEvent.columnIndex = dilr.listData.columnIndex; dataGridEvent.dataField = dgColumn.dataField; dataGridEvent.rowIndex = dilr.listData.rowIndex +  verticalScrollPosition; dataGridEvent.itemRenderer = r; dispatchEvent(dataGridEvent); } } super.mouseDoubleClickHandler(event); } override protected function mouseUpHandler(event:MouseEvent):void { var r:IListItemRenderer; var dgColumn:DataGridColumn; r = mouseEventToItemRenderer(event); if (r) { var dilr:IDropInListItemRenderer = IDropInListItemRenderer(r); if (columns[dilr.listData.columnIndex].editable) { dgColumn = columns[dilr.listData.columnIndex]; dgColumn.editable = false; } } super.mouseUpHandler(event); if (dgColumn) dgColumn.editable = true; } } }
8,页面显示,testflex.mxml

view plaincopy to clipboardprint?
<?xml version="1.0" encoding="utf-8"?> 
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"  
               xmlns:s="library://ns.adobe.com/flex/spark"  
               xmlns:mx="library://ns.adobe.com/flex/mx"  
               xmlns:locdg="com.flex.*" 
               creationComplete="initApp()" 
               minWidth="955" minHeight="600"> 
    <fx:Declarations> 
        <!-- 将非可视元素(例如服务、值对象)放在此处 --> 
        <s:RemoteObject id="userdata" destination="userDao" result="onResult(event)" fault="onFault(event)" /> 
        <!--<s:method name="getUserList" result="onResult(event)" fault="onFault(event)" />--> 
        <s:RemoteObject id="adduserdata" destination="userDao" result="addResult(event)" fault="addFault(event)" /> 
        <s:RemoteObject id="updatauserdata" destination="userDao" result="updataResult(event)" fault="updataFault(event)" /> 
        <s:RemoteObject id="deleteuserdata" destination="userDao" result="deleteResult(event)" fault="deleteFault(event)" /> 
    </fx:Declarations> 
    <fx:Script> 
        <!--[CDATA[ 
            import com.flex.UserFlex; 
             
            import mx.collections.ArrayCollection; 
            import mx.controls.Alert; 
            import mx.managers.CursorManager; 
            import mx.rpc.events.FaultEvent; 
            import mx.rpc.events.ResultEvent; 
             
            public var userFlex:UserFlex = new UserFlex(); 
            public var result:Object = new Object(); 
            [Bindable] 
            public var users:ArrayCollection = new ArrayCollection(); 
             
            public function initApp():void{ 
//              userdata.getUserList(); 
            } 
             
            public function click_handler(event:Event):void{ 
                CursorManager.setBusyCursor(); 
                info.text = "正在查 询..."; 
                userdata.getUserList(); 
            } 
            public function adduser_handler(event:Event):void{ 
                if(username.text != "" && password.text != ""){ 
                    CursorManager.setBusyCursor(); 
                    addinfo.text = "正在添加..."; 
                    userFlex.username = username.text; 
                    userFlex.password = password.text; 
                    adduserdata.addUser(userFlex); 
                }else{ 
                    addinfo.text = " 用户名和密码不能为空"; 
                } 
            } 
            public function updataUser(event:Event):void{ 
                if(userlist.selectedItem.username != "" && userlist.selectedItem.password != ""){ 
                    CursorManager.setBusyCursor(); 
                    info.text = "正在 更新..."; 
                    userFlex.id = userlist.selectedItem.id; 
                    userFlex.username = userlist.selectedItem.username; 
                    userFlex.password = userlist.selectedItem.password; 
                    updatauserdata.updataUser(userFlex); 
                } 
//              Alert.show("确认修改?"); 
            } 
            public function deleteUser(event:Event):void{ 
                CursorManager.setBusyCursor(); 
                info.text = "正在正在删 除..."; 
                userFlex.id = userlist.selectedItem.id; 
                deleteuserdata.deleteUser(userFlex); 
            } 
             
            public function onResult(event:ResultEvent):void{ 
                users = event.result as ArrayCollection; 
                CursorManager.removeBusyCursor(); 
                if(users.length==0){ 
                    info.text="取数据成功,为空"; 
                }else{ 
                    info.text = " 取数据成功"; 
                } 
            } 
            public function onFault(event:FaultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                info.text="取数据失败"; 
            } 
            public function addResult(event:ResultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                userdata.getUserList(); 
                username.text = ""; 
                password.text = ""; 
                addinfo.text = " 添加成功"; 
                //              info.text = "取数据成功"; 
            } 
            public function addFault(event:FaultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                addinfo.text="添加失败"; 
            } 
            public function updataResult(event:ResultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                userdata.getUserList(); 
                info.text = "修改数 据成功"; 
            } 
            public function updataFault(event:FaultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                info.text="修改数据失 败"; 
            } 
            public function deleteResult(event:ResultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                userdata.getUserList(); 
                info.text = "刪除数据成 功"; 
            } 
            public function deleteFault(event:FaultEvent):void{ 
                CursorManager.removeBusyCursor(); 
                info.text="刪除数据失败"; 
            } 
        ]]--> 
    </fx:Script> 
    <locdg:DoubleClickDataGrid x="61" y="189" id="userlist" dataProvider="{users}" editable="true"> 
        <locdg:columns> 
            <mx:DataGridColumn headerText="ID号" dataField="id" editable="false"/> 
            <mx:DataGridColumn headerText="账号" dataField="username" editable="true"/> 
            <mx:DataGridColumn headerText="密码" dataField="password" editable="true"/> 
            <mx:DataGridColumn headerText="修改" width="50" editable="false" > 
                <mx:itemRenderer> 
                    <fx:Component> 
                        <mx:LinkButton toolTip="修改" click="outerDocument.updataUser(event)" icon="@Embed('/image/update.gif')"> 
                        </mx:LinkButton> 
                    </fx:Component> 
                </mx:itemRenderer> 
            </mx:DataGridColumn> 
            <mx:DataGridColumn headerText="删除" width="50" editable="false" > 
                <mx:itemRenderer> 
                    <fx:Component> 
                        <mx:LinkButton toolTip="删除" click="outerDocument.deleteUser(event)" icon="@Embed('/image/delete.gif')">    
                        </mx:LinkButton> 
                    </fx:Component> 
                </mx:itemRenderer> 
            </mx:DataGridColumn> 
        </locdg:columns> 
    </locdg:DoubleClickDataGrid> 
    <s:Button x="491" y="189" label="取数 据" click="click_handler(event)" /> 
    <s:RichText x="606" y="189" id="info" text="点击按钮取数据"/> 
    <mx:Form x="163" y="72" borderStyle="solid" borderVisible="true"> 
        <mx:FormItem label="用户名" borderStyle="solid" borderVisible="true"> 
            <s:TextInput id="username" /> 
        </mx:FormItem> 
        <mx:FormItem label="密 码" borderStyle="solid" borderVisible="true"> 
            <s:TextInput id="password"/> 
        </mx:FormItem> 
    </mx:Form> 
    <s:Button x="444" y="100" label="添 加" click="adduser_handler(event)"/> 
    <s:RichText x="544" y="100" id="addinfo" text="请添加"/> 
</s:Application> 
<?xml  version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"     xmlns:s="library://ns.adobe.com/flex/spark"     xmlns:mx="library://ns.adobe.com/flex/mx"     xmlns:locdg="com.flex.*"    creationComplete="initApp()"    minWidth="955" minHeight="600"> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> <s:RemoteObject id="userdata" destination="userDao"  result="onResult(event)" fault="onFault(event)" /> <!--<s:method name="getUserList" result="onResult(event)"  fault="onFault(event)" />--> <s:RemoteObject id="adduserdata" destination="userDao"  result="addResult(event)" fault="addFault(event)" /> <s:RemoteObject id="updatauserdata" destination="userDao"  result="updataResult(event)" fault="updataFault(event)" /> <s:RemoteObject id="deleteuserdata" destination="userDao"  result="deleteResult(event)" fault="deleteFault(event)" /> </fx:Declarations> <fx:Script> <!--[CDATA[ import com.flex.UserFlex; import mx.collections.ArrayCollection; import mx.controls.Alert; import mx.managers.CursorManager; import mx.rpc.events.FaultEvent; import mx.rpc.events.ResultEvent; public var userFlex:UserFlex = new UserFlex(); public var result:Object = new Object(); [Bindable] public var users:ArrayCollection = new ArrayCollection(); public function initApp():void{ // userdata.getUserList(); } public function click_handler(event:Event):void{ CursorManager.setBusyCursor(); info.text = "正在查询..."; userdata.getUserList(); } public function adduser_handler(event:Event):void{ if(username.text != "" && password.text != ""){ CursorManager.setBusyCursor(); addinfo.text = "正在添加..."; userFlex.username = username.text; userFlex.password = password.text; adduserdata.addUser(userFlex); }else{ addinfo.text = "用户名和密码不能为空"; } } public function updataUser(event:Event):void{ if(userlist.selectedItem.username != "" &&  userlist.selectedItem.password != ""){ CursorManager.setBusyCursor(); info.text = "正在更新..."; userFlex.id = userlist.selectedItem.id; userFlex.username = userlist.selectedItem.username; userFlex.password = userlist.selectedItem.password; updatauserdata.updataUser(userFlex); } // Alert.show("确认修改?"); } public function deleteUser(event:Event):void{ CursorManager.setBusyCursor(); info.text = "正在正在删除..."; userFlex.id = userlist.selectedItem.id; deleteuserdata.deleteUser(userFlex); } public function onResult(event:ResultEvent):void{ users = event.result as ArrayCollection; CursorManager.removeBusyCursor(); if(users.length==0){ info.text="取数据成功,为空"; }else{ info.text = "取数据成功"; } } public function onFault(event:FaultEvent):void{ CursorManager.removeBusyCursor(); info.text="取数据失败"; } public function addResult(event:ResultEvent):void{ CursorManager.removeBusyCursor(); userdata.getUserList(); username.text = ""; password.text = ""; addinfo.text = "添加成功"; // info.text = "取数据成功"; } public function addFault(event:FaultEvent):void{ CursorManager.removeBusyCursor(); addinfo.text="添加失败"; } public function updataResult(event:ResultEvent):void{ CursorManager.removeBusyCursor(); userdata.getUserList(); info.text = "修改数据成功"; } public function updataFault(event:FaultEvent):void{ CursorManager.removeBusyCursor(); info.text="修改数据失败"; } public function deleteResult(event:ResultEvent):void{ CursorManager.removeBusyCursor(); userdata.getUserList(); info.text = "刪除数据成功"; } public function deleteFault(event:FaultEvent):void{ CursorManager.removeBusyCursor(); info.text="刪除数据失败"; } ]]--> </fx:Script> <locdg:DoubleClickDataGrid x="61" y="189" id="userlist"  dataProvider="{users}" editable="true"> <locdg:columns> <mx:DataGridColumn headerText="ID号" dataField="id"  editable="false"/> <mx:DataGridColumn headerText="账号" dataField="username"  editable="true"/> <mx:DataGridColumn headerText="密码" dataField="password"  editable="true"/> <mx:DataGridColumn headerText="修改" width="50" editable="false"  > <mx:itemRenderer> <fx:Component> <mx:LinkButton toolTip="修改"  click="outerDocument.updataUser(event)"  icon="@Embed('/image/update.gif')"> </mx:LinkButton> </fx:Component> </mx:itemRenderer> </mx:DataGridColumn> <mx:DataGridColumn headerText="删除" width="50" editable="false"  > <mx:itemRenderer> <fx:Component> <mx:LinkButton toolTip="删除"  click="outerDocument.deleteUser(event)"  icon="@Embed('/image/delete.gif')"> </mx:LinkButton> </fx:Component> </mx:itemRenderer> </mx:DataGridColumn> </locdg:columns> </locdg:DoubleClickDataGrid> <s:Button x="491" y="189" label="取数据" click="click_handler(event)"  /> <s:RichText x="606" y="189" id="info" text="点击按钮取数据"/> <mx:Form x="163" y="72" borderStyle="solid" borderVisible="true"> <mx:FormItem label="用户名" borderStyle="solid"  borderVisible="true"> <s:TextInput id="username" /> </mx:FormItem> <mx:FormItem label="密码" borderStyle="solid"  borderVisible="true"> <s:TextInput id="password"/> </mx:FormItem> </mx:Form> <s:Button x="444" y="100" label="添加"  click="adduser_handler(event)"/> <s:RichText x="544" y="100" id="addinfo" text="请添加"/> </s:Application>

本文来自CSDN博客,转载请标明出处:http://www.cnblogs.com/nianshi/archive/2010/05/11/1732440.html
分享到:
评论

相关推荐

    flex+java实现增删改查Dome

    本项目“flex+java实现增删改查Dome”是一个基于Flex前端和Java后端的示例,用于演示如何实现数据的CRUD(Create、Read、Update、Delete)操作。下面将详细介绍Flex与Java的集成以及在这个Dome中的具体应用。 Flex...

    flex通过java实现增删改查

    ### Flex通过Java实现增删改查 在软件开发过程中,增删改查(CRUD)操作是最基础也是最重要的数据操作之一。本文将详细介绍如何利用Java技术实现这些操作,并结合Flex前端技术来展示一个完整的示例。 #### 数据库...

    flex+java增删改查(spring+jpa)简单例子

    标题 "flex+java增删改查(spring+jpa)简单例子" 暗示了这是一个关于使用Adobe Flex作为前端UI框架,与Java后端结合,实现数据的CRUD(创建、读取、更新、删除)操作的教程。在这个场景中,Java后端使用Spring框架...

    Flex实战-puremvc+java(spring+hibernate)实现增删改查操作

    《Flex实战:PureMVC+Java(Spring+Hibernate)实现增删改查操作》 在本文中,我们将深入探讨如何利用Flex作为前端展示层,结合后端的Java技术栈,包括Spring和Hibernate,来构建一个完整的CRUD(创建、读取、更新、...

    flex+java 增删改查完整版

    本文将详细阐述如何通过BlazeDS这一中间件,实现Flex与Java的完美整合,以完成数据库的增删改查操作。 1. **BlazeDS介绍** BlazeDS是Adobe官方提供的一款开源服务器端组件,它允许Flex客户端与Java服务器进行实时...

    FLEX最强增删改查

    这个示例项目将帮助你深入理解Flex、Spring、Hibernate和Java之间的协作机制,以及如何在实际项目中实现增删改查的基本功能。通过学习和分析每个部分的代码,你将能够提升自己在这些技术上的综合运用能力。同时,...

    flex通过blazeds与java集成增删改查

    通过以上步骤,我们可以构建一个完整的Flex-BlazDS-Java集成应用,实现数据的增删改查功能。这个过程涉及到了前端UI设计、后端服务开发、数据访问以及错误处理等多个方面,对于理解和掌握Flex和BlazDS的集成技术非常...

    flex与Java整合(完整的增删改查)

    ### Flex与Java整合实现增删改查功能详解 在当今的软件开发领域,Flex与Java的结合被广泛应用于创建高效且交互丰富的应用。本文将基于提供的文档内容,深入解析Flex与Java整合过程中如何实现基本的数据库操作——增...

    flex_java_mysql 增删改查

    这个名为“flex_java_mysql 增删改查”的项目就是一个典型的三层架构示例,它结合了Adobe Flex作为前端、Java作为服务端后端以及MySQL作为数据库进行数据管理。以下是关于这三个关键技术的详细解释: 1. Flex:Flex...

    flex链接java增删改查

    在本文中,我们将深入探讨如何使用Flex连接Java进行数据库的增删改查操作,特别是针对MySQL数据库。首先,我们创建了名为`userdb`的数据库,并在其中建立了一个`userinfo`表,用于存储用户信息。接下来,我们创建了...

    BlazeDS整合Spring实现增删改查

    在本主题“BlazeDS整合Spring实现增删改查”中,我们将深入探讨如何利用BlazeDS与Spring框架相结合,以实现在Flex前端进行数据的添加、删除、修改和查询操作。 首先,我们需要理解Spring框架在Java后端的角色。...

    flex-java整合研究配置

    其中,Flex作为一种用于构建丰富互联网应用程序(RIA)的技术,与Java这样的后端语言结合,能够实现高性能且用户体验良好的应用系统。本文将详细介绍如何在Java环境中嵌入Flex项目,并进行必要的配置。 #### 二、准备...

    flex+hibernate3+myeclipse6学员成绩管理系统增删改查+图表(应该要改善)

    《Flex+Hibernate3+MyEclipse6学员成绩管理系统——增删改查与图表展示的实践与改进》 本文将深入探讨一个基于Flex、Hibernate3和MyEclipse6的学员成绩管理系统,该系统集成了基本的增删改查功能以及图表展示,旨在...

    Flex与Java交互调用mysql

    本示例将详细讲解如何利用BlazeDS技术使Flex与Java进行交互,进而实现对MySQL数据库的增删改查操作。 首先,Flex是一个开源的RIA开发框架,主要用于创建动态和交互性的用户界面,但其本身并不直接支持数据库操作。...

    Flex和java交互的示例代码

    - 在实际应用中,除了简单的数据展示外,还需要考虑数据的增删改查等操作。 - 为了提高系统的安全性和可维护性,建议使用ORM框架代替直接使用JDBC。 - 对于Flex客户端来说,需要确保与Java端的数据格式兼容,通常...

    flex+hibernate+mysql做得增删改查的例子

    在这个例子中,"flex+hibernate+mysql做得增删改查的例子"是一个基于Java技术栈的项目,它结合了Flex(前端展示层)、Hibernate(持久层框架)和MySQL(关系型数据库)来实现基本的数据操作:增加(Add)、删除...

Global site tag (gtag.js) - Google Analytics