论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Flash AS编程教程
Tag:2.0,3.0菜鸟,游戏,,cs,技巧,源码,,文本,文字,函数,音乐,随机,拖拽,asp,access,xml,mc,视频教程

Blue框架的基本教程一:连接服务器

文章类别:Flash AS编程 | 发表日期:2008-10-6 17:36:20


下载Blue框架的服务端和客户端的包,接着我们就看其中的使用例子
(下载类库:类库)

在使用Blue之前,建议先去看看服务端和客户端的api 
服务器的主要看Server,Application,StartEndListenter,Client
客户端看一个ConnectJavaServer类的文档就够了
当然,你直接看例子也很容易熟悉的

首先来看flash客户端怎么连接到服务器上去的
先看客户端的as代码

//导入ConnectJavaServer类
import org.sujun.blue.net.ConnectJavaServer;
//实例化一个网络连接类
var netConnect:ConnectJavaServer = ConnectJavaServer.getConnectJavaServer();
//客户端连接成功或者失败后,会调用该事件
netConnect.onConnect = function(msg:String)
{
    trace("msg:" + msg);
    if(msg == "connect success")
    {
        trace("连接成功");
    }
    else
    {
        trace("连接失败");
    }
}

//连接服务器
netConnect.connect("localhost",5588,"soda","admin123");

代码就很简单啦,说得很明白,当然,首先是要把那个客户端的包放进去

接下来看服务端的代码的MainFrame.java类
首先是一个启动服务器的,这个类调用了blue的里网络服务
import org.sujun.blue.net.Server;
import org.sujun.blue.global.Application;

public class MainFrame 
{
    public static void main(String[] args)
    {
        //注册响应客户端连接和端开处理类
        Application.addStartEndListenter(new StartAndEnd());
        Server ser = new Server();
        //设置端口
        ser.setPort(5588);
        //启动服务
        ser.startServer();
    }
}

这个类很简单,注意到代码中的这一行,
//注册响应客户端连接和端开处理类
Application.addStartEndListenter(new StartAndEnd());
查看blue提供的相应api就知道了,Application.addStartEndListenter这个方法是注册一个相应客户端连接与关闭的方法,需要的参数是StartEndListenter接口的实现类
StartEndListenter接口只定义了两个默认的方法
/**
     * 客户端刚连接成功时调用该方法
     * (默认带一个参数方法)
     * @param client 包含客户端信息的Client实例
     */
    public void onConnet(Client client)
    {
    }
    
    /**
     * 客户端意外与服务器断开连接时响应该方法
     * (默认带一个参数方法)
     * @param client
     */
    public void thunderboltCut(Client client)
    {
    }

这两个默认的方法,blue框架都已经默认地实现了,但是如果需要在客户端登陆或者退出的时候传递参数的时候,就需要对这两个方法进行多态了。下面是我们例子的响应客户端连接端开的代码
StartAndEnd.java
import org.sujun.blue.remote.Client;
import org.sujun.blue.global.Application;
import org.sujun.blue.response.StartEndListenterAdapter;


public class StartAndEnd extends StartEndListenterAdapter
{
    //客户端连接时调用,提供了3个参数,注意Client client这个参数是必须的
    public void onConnet(Client client,String name, String pass)
    {
        //判断用户名是正确
        if(name.equals("soda") && pass.equals("admin123"))
        {
            //成功连接
            Application.setStart(true,"SUCCESS");
        }
        else
        {
            //连接失败
            Application.setStart(false,"FAIL");
        }
        System.out.println("用户连接程序完毕");
    }
    
    //客户端端开时调用
    public void thunderboltCut(Client client)
    {
        System.out.println("服务器意外关闭时调用!没有参数的");
    }
}

源代码下载:例子代码
视频教程列表
文章教程搜索
 
Flash AS推荐教程
Flash AS热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058