嘿,先向大家宣传下我站啊,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;
}
}
}

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,就这么简单,呵呵,赶快运行,看看效果呢。
前几天有网友要我写一篇关于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;
}
} 
第三,创建以下代码在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;
}
}
}
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> 
<destination id="UserDao">
<properties>
<source>org.rjb.java.UserDao</source>
</properties>
</destination>
本文介绍了一个Flex与Java进行数据库交互的示例。通过Java处理数据库操作,并使用Flex前端展示数据。示例包括Java端数据库连接和查询代码,以及Flex端数据获取和展示的实现。
3407

被折叠的 条评论
为什么被折叠?



