flash与数据库:读取数据库数据

     今天,天气依旧很热。整个房间像火炉一般炽热。今天来写写这方面的笔记,做个实验。看看如何运作,首先来讲这方面需要准备一些资料。就是关于数据库方面资料。因为手上资料很少,很多事情都是需要一步步探索。flash 不能直接和数据库进行交互(除air 之外),故此我们需要找一种平台搭配一些协作开发。目前很多流行的方案是多种多样,每一个家公司用的服务器都有所不同。据一些同事介绍,

 

        搭配平台如下(1):java +flash +mysql 组合开发

                           (2):c++ +flash+sql组合开发

                           (3):php +flash+mysql 组合开发

 

还有FMS ,等等更多组合..........

flash 只是用于前端显示数据和交互,大部分交互数据方面需要借助其他语言帮助

 

 目前而言mysql 已经可以满足很多开发公司,除非有特别需求动用到oracle 甲骨文这样的大型数据,但无论怎样组合目的就是要实现到产品。

 

  好,现在开始做实验了。需要准备的材料是:java sdk tomcat ,mysql等一些工具。准备好之后,开始一步步摸索怎样交互。

 

 我的目的是读取到数据库的数据。

 

当中实验当中遇到问题是(1) 怎样利用读取数据库的资料?

                                 (2) 怎样返回数据给flash接收?

                                 (3) 采用什么方式格式来交互?

                                 (4) 格式应该如何选择?xml json 字符串?等

                                 (5) 应该如何显示数据?

 

 

接下来,尝试实验第一种方式,也是最简单,最傻瓜的方式,我所知道的就是这样水平,所以要将这个实验带入一个开始阶段将不会掺杂更多完善的设计。出发的过程就需要尽量简单化。(O(∩_∩)O哈哈~)

 

 初步意向:

  flash 发送数据---->服务端 -------> 数据库

  flash  接收数据<-----服务器<--------数据库

 

 

要进行这样,我们需要采用flash.net 包下URLLoader 进行发送数据(而flex 就采用Http 组件或者其他远程访问)。准备好之后,我们拥有的条件已经可以进行一个简单的发送了。

 

封装一个发送数据的类。用于交互 发送

 

 

创建news表

 

手动设计表:设置两个项 一个是id 另外一个 是title 这样的数据项。如图所示。

 

数据库名称为test ,表名为news 。

 

 

 

 

然后

 

手动为表添加一些数据入去。

 

 

 

 测试数据库是否成功和数据库交互:

添加完数据库后,在这里会使用jsp 进行测试,而这种方式比较笨拙,而且效率不高,一般不会这样使用,但是这样做好处是为了省下时间做快速设计。而我们所在水平是如何,这些并不重要,关键是要适合我们,在方法当中寻找过程解决方案。这些才重要。技术水平因人而异

 

而其他更加优秀的做法,有一些人会严格使用框架技术,这样操作和链接数据库在效率提升不少。下面是已经链接到数据库的测试。

 

 

 

数据库测试成功之后,我们需要的工作就是利用SQL 语句,查询数据并输出。jsp做法是

 

sql语句:String sql="select * from  news";

创建一个Statement  对象,通过执行executeQuery返回。

 

Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery(sql); //执行查询 

 

查询的结果集,采用循环输出来

while(rs.next())
{
 msg+=rs.getString("title")+"##";

}
out.clear();
out.print("newList="+msg);

 

 

你会看到一系列的数据出现了

 

 

 输出数据:

 

 

 

这里是由于在数据库预先插入去了。(方式依旧是人工和手动设计。呵呵)

 

 

 flash接收数据

接下来,我们就需要解决发送的问题?问题是 怎样发送数据到flash客户端?

发送的 方式是多种多样,当中可以是名称/值 的方式发送,也可以按xml ,json 还有其他格式发送。

 

 这里是从数据库接收到的数据。并显示出来的

 

 

 

  按实验来进行一步步来制作。

          封装一个类,进行发送数据

 

 

  其次:

 

 

 

 

 

 

好乏味的东西已经准备完毕。到了解析的时候了。

在flash 里面会使用URLLoader进行发送数据,我们选择发送方式可以是post 和get 。接收数据 可以是二进制,文本,或者名称/值的方式进行。

 

jsp 发送的数据的过程,其实就是输出的过程当中,flash接收的是jsp输出的数据,out.print里面输出页面的数据。

 

接收的数据的时候,可以采用上面三种方式,而这些都是看个人需要而定。

 

在jsp ,使用这种名称/方式进行对于当flash 将设定的数据格式接收的时候 URLLoaderDataFormat.VARIABLES这种情况的时候。 在as3.0 的时候,设置为以下方式方式 newList是名称,可以随意的

out.print("newList="+msg);

 

这样flash 发送过来的是以字符串形式发送。在flash 将数据加载完毕之后,会通知flash 处理这些数据

var msg:String=sqldata.data.newList.toString(); 接收数据

 

 

采用URLLoader类来进行读取这个是data 已经填充好的数据里面。读取他们所需要的内容了。为了显示他们数据,我们准备动态文本

用于显示它的数据。

 

 创建一个元件,在元件里面添加一个动态文本。如图,并进行库链接改名称为NewList 意思为新闻列表

 

 

 

 

创建新闻条数,并显示出数据来。循环读取出来。

 

 

到目前为此,显示数据实验已经初步完成了。

后面的工具就是选择其他更加有效设计了和扩展。

 

 

 

 

 

 

         

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    

 

 

 

 

 

         

 

 

 

 

 

 

 

  • 3
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 23
    评论
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值