nijiaben
BlogJava
首页
新随笔
新文章
联系
聚合
管理
posts - 15,comments - 65,trackbacks - 0
<
2009年4月
>
日
一
二
三
四
五
六
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(5)
给我留言
查看公开留言
查看私人留言
随笔档案
2013年4月 (1)
2010年6月 (1)
2010年4月 (1)
2009年9月 (3)
2009年7月 (2)
2009年5月 (3)
2009年4月 (4)
文章档案
2013年4月 (1)
blog
你假笨Flex&Java技术博客网
你假笨javaeye博客
搜索
最新评论
1. re: OsWorkflow工作流设计器flex版本终于完工了
楼主可以把源代码发给我研究下不?zhangjianxxl@tom.com感谢
--flex学者
2. re: Flex与java交互之数据库数据读取
刚问完,删掉remoting-config文件的adapter-definition元素的default="true" />里面的空格就好了@斦
--斦
3. re: Flex与java交互之数据库数据读取
我也是这样子的问题,不知最后是怎样解决的?@wl
--斦
4. re: OsWorkflow工作流设计器flex版本终于完工了
跪求源码,谢谢,a158abc@163.com
--jiewei
5. re: Flex与java交互之数据库数据读取[未登录]
按照以上代码,最终点击获取数据按钮后,直接error。请问是什么原因
--Eric
阅读排行榜
1. Flex与java交互之数据库数据读取(7770)
2. OsWorkflow工作流设计器flex版本终于完工了(6750)
3. jQuery选择器选择dom元素(5304)
4. dom4j在指定位置新增节点(3078)
5. 小议jQuery对象中的类数组操作(2387)
评论排行榜
1. OsWorkflow工作流设计器flex版本终于完工了(44)
2. Flex与java交互之数据库数据读取(14)
3. Flex版OSWorkflow界面展示(山寨版)(2)
4. dom4j在指定位置新增节点(1)
5. jQuery选择器选择dom元素(1)
Flex与java交互之数据库数据读取
嘿,先向大家宣传下我站啊,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,就这么简单,呵呵,赶快运行,看看效果呢。
posted on 2009-04-11 17:52
你假笨
阅读(7770)
评论(14)
编辑
收藏
FeedBack:
#
re: Flex与java交互之数据库数据读取
2009-04-12 19:03 |
左洸
你用的也是 jspkj.com 的主机啊,我去看了好多次了,价钱道挺公道,一直犹豫。另外,我现在还在犹豫用php 还是 java ,java感觉还是太重型了。
对了,你准备不准备备案啊,这也是个让人头疼的问题啊
回复
更多评论
#
re: Flex与java交互之数据库数据读取[未登录]
2009-04-12 20:00 |
你假笨
@左洸
嗯,呵呵,那空间站还不错哈,服务态度也好,可以尝试下呢。我有时间了也学下php啊,flex和php结合得好像更好些
回复
更多评论
#
re: Flex与java交互之数据库数据读取
2009-04-27 15:28 |
ithanshui
博主你好:
我是初学flex的,我将代码整理后,运行的时候点击按钮DataGrid里面的数据为什么显示不出来?
回复
更多评论
#
re: Flex与java交互之数据库数据读取
2009-07-10 00:06 |
hcg8827
bloger我不知道你最后的显示是怎么显示出来的 但是我可以说这段代码是有问题的
在as的 ao和java jo对应中 在flex的command你是取一个arraycollection 作为dataprovider但是 作为一个通用容器 arraycollection返回的应该是一个object
而不是as的user对象 这中间有一个转换过程 而flex是不可能自动帮你转化的 因为object在外部开起来是一样的要自动转化的话只有通过instance找到它的确切类型或者是要求在JAVA那边中表述清楚发过来的list中 包含的是那个类的对象 但是这样很不现实
也就是说 从arraycollection里面取出来的肯定是object对象 而obejct对象肯定是无法取得name这些字段的 所以 我不知道你是怎么获得最后的显示的 但是很多人都显示不出来 改一下才能正确显示
回复
更多评论
#
re: Flex与java交互之数据库数据读取
2009-07-10 14:03 |
nijiaben
@hcg8827
呵呵,你之所以没有显示出来最大的可能是你配置上出错了,你点击Project->Properties->Flex Server,如果你的ROOT RUL显示类似为
http://localhost:8080
/FlexJava以及Context" target="_new" rel="nofollow">
http://localhost:8080
/FlexJava以及Context root为/WebRoot的话,那请你改成ROOT RUL显示为
http://localhost:8080
,而Context root的值改为/FlexJava,这是很多初学者最不注意的地方,你可以改了再试试
回复
更多评论
#
re: Flex与java交互之数据库数据读取
2009-12-09 10:23 |
jj
能不能介绍下项目环境,我知道你这东西是运行在java项目里面的还是单独的flex项目,再说了,remoting-config.xml,这个是flex内置的配置,还是给什么组件用的,你让我一个做java的看,我就觉得你这东西跑不起来,我连项目放什么地方我都不知道。发出来了就试试讲清楚,让一个一次都没做过flex的人可以依次运行,这才是高度
回复
更多评论
#
re: Flex与java交互之数据库数据读取
2010-05-12 17:30 |
yuqi
@nijiaben
我按你的说的路径进去了,但是他不让我配置,全部都是灰的!
请问是什么原因?
回复
更多评论
#
re: Flex与java交互之数据库数据读取[未登录]
2010-08-19 10:23 |
ddd
sddd
回复
更多评论
#
re: Flex与java交互之数据库数据读取
2011-08-10 23:16 |
不行
不行。。。。。。
回复
更多评论
#
re: Flex与java交互之数据库数据读取[未登录]
2011-08-16 10:42 |
wl
按照上面 的方法做了之后 有一个错误 怎么改
Unexpected text '
' found in 'destination' from file: remoting-config.xml.
回复
更多评论
#
re: Flex与java交互之数据库数据读取
2013-05-14 11:59 |
liuxinye
你好,Flex与java交互之数据库数据写入,搞不懂,不知道怎么回事
回复
更多评论
#
re: Flex与java交互之数据库数据读取[未登录]
2013-09-12 18:15 |
Eric
按照以上代码,最终点击获取数据按钮后,直接error。请问是什么原因
回复
更多评论
#
re: Flex与java交互之数据库数据读取
2013-12-30 10:07 |
斦
我也是这样子的问题,不知最后是怎样解决的?@wl
回复
更多评论
#
re: Flex与java交互之数据库数据读取
2013-12-30 10:11 |
斦
刚问完,删掉remoting-config文件的adapter-definition元素的default="true" />里面的空格就好了@斦
回复
更多评论
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理