论文无忧网提供:计算机毕业论文范文|计算机毕业设计|计算机毕业论文
栏目导航 ASP Java Web .NET VB6.0 JAVA VC VF DELPHI PB 计算机网络 计算机科学与技术 PHP 安卓APP 其他 C# 代写论文
当前位置: > 计算机 > 计算机科学与技术 >

面向internet上的cscw的共享白板(论文+程序)

        Client listdata1 = (Client)frame.clients.elementAt(i); 内容来自www.paper51.com

     frame.list1.add(listdata1.name+ "" + listdata1.ip +"已经连接", i);} copyright paper51.com

       notifyRoom(); copyright paper51.com

       this.stop();}}}

copyright paper51.com

服务器接收到客户信息分析后转发功能的方法是Client类中的sendClients()和send()两个方法的组合,其功能实现代码如下。 paper51.com

public synchronized void send(StringBuffer message){ 内容来自论文无忧网 www.paper51.com

   ps.println(message);

内容来自论文无忧网 www.paper51.com

    ps.flush(); 内容来自www.paper51.com

  }

paper51.com

  public static synchronizedvoid sendClients(StringBuffer message){ 内容来自论文无忧网 www.paper51.com

    for (int i = 0; i< frame.clients.size() ; i++) {

http://www.paper51.com

     Client c = (Client)frame.clients.elementAt(i);

http://www.paper51.com

     c.send(message);} 内容来自www.paper51.com

服务器接收到用户登录链接的用户名称后,进行分析是否该用户名称已经存在的功能的方法是Clinet类中的checkName()方法,其功能实现代码如下。

内容来自www.paper51.com

public static boolean checkName(Client newClient){

内容来自www.paper51.com

    for (int i = 0; i< frame.clients.size() ; i++) { 内容来自www.paper51.com

     Client c = (Client)frame.clients.elementAt(i); 内容来自www.paper51.com

      if ((c != newClient) &&c.name.equals(newClient.name) ) {

paper51.com

       return false;}}

内容来自www.paper51.com

    return true;}

copyright paper51.com

服务器对所有客户端用户列表的更新功能,也就是服务器把记录下来所有用户列表中的用户名称转发给所有在线用户的功能,这个功能的实现是Clinet类中的notifyRoom()方法,其功能实现代码如下。 内容来自论文无忧网 www.paper51.com

public static void notifyRoom() {

paper51.com

    StringBufferpeople = new StringBuffer("PEOPLE:");

http://www.paper51.com

    for (int i = 0; i< frame.clients.size(); i++) {

http://www.paper51.com

     Client c = (Client)frame.clients.elementAt(i); 内容来自www.paper51.com

     people.append(c.name + ":");} 内容来自论文无忧网 www.paper51.com

   sendClients(people);} 内容来自www.paper51.com

服务器对客户端用户的请求退出功能的实现是发送退出用户的用户名称给所有在线用户,同时把该用户名称从用户列表中移除掉,这个功能的实现是Client类中的disconnect()方法,其功能实现代码如下。 内容来自www.paper51.com

public synchronized void disconnect(Client c){

http://www.paper51.com

    try { paper51.com

frame.jTextArea1.append("系统消息:"+c.name+"  断开连接\n");

paper51.com

     frame.active_connects--;

http://www.paper51.com

     c.send(new StringBuffer("QUIT"+":"+c.name ));

paper51.com

     frame.clients.removeElement(c); paper51.com

     frame.jTextField2.setText("目前已经有: " + frame.clients.size() +

内容来自www.paper51.com

                                "用户连接");

paper51.com

      c.socket.close(); copyright paper51.com

    } 内容来自论文无忧网 www.paper51.com

    catch (IOException ex) {

copyright paper51.com

     …… copyright paper51.com

    }

内容来自www.paper51.com

 }

内容来自论文无忧网 www.paper51.com

------分隔线----------------------------
联系方式