浏览 4654 次
锁定老帖子 主题:Flex与java交互之数据库数据读取
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-03-27
最后修改:2009-06-14
http://www.lovestblog.cn,这是我的个人博客,希望大家常来我博客坐坐呢,相信大家也会有所收益的,不过我也不会放弃javaeye的,我也会一直在这里写东西的。
嘿,先向大家宣传下我站啊,
前几天有网友要我写一篇关于flex与数据库交互的例子,一直由于时间紧没能写,今天晚上特地花点时间写了个例子,希望能给大家一点帮助,其实flex与数据库交互很简单的,我主要是通过java与数据库交互读取数据,然后flex和java进行交互,把java读取的数据在flex前端显示出来,好了,说了一堆废话,下面代码说明问题。 对于建立一个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; } } } 接下来是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> ok,就这么简单,呵呵,赶快运行,看看效果呢,我把效果粘帖出来哦。 你们看看是不是有相同的效果,如果还觉得有哪里不理解的可以问我噢,给我留言吧,以后还希望朋友们多多支持我博客呀,呵呵。这篇博文是我首先发表在自己的博客http://nijiaben058.jspkj.com,欢迎大家去我那个博客上逛逛,相信也会有所收益的,呵呵。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-03-31
都这意思啊 只是我们用了框架
|
|
返回顶楼 | |
发表时间:2009-04-01
你那站点都提示关闭或者没备案的。
|
|
返回顶楼 | |
发表时间:2009-04-01
alizv 写道 你那站点都提示关闭或者没备案的。 呵呵,这些天因为点事关了,过几天就开了,呵呵 |
|
返回顶楼 | |
发表时间:2010-01-25
那个User.as 有用到吗?
|
|
返回顶楼 | |