毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 课程设计 >> 正文

java聊天程序Socket+Java聊天程序源代码 第3页

更新时间:2011-7-16:  来源:毕业论文
while(started) {
             Socket s = ss.accept();
          
             number++;
             jb.setText("当前在线人数为:"+number);
                   System.out.println("a client connected!");//提示客户端已经连接服务器成功了。
                   t3.setText(t3.getText()+"\n"+"用户:"+number+"上线了");
                   Client c=new Client(s);
                   kehu.add(c);
                   new Thread(c).start();
   
   }
  } catch (IOException e) {
  System.out.println("Client has shuttdown!");//提示客户端服务器已经关闭了
  } finally {
        try {
         ss.close();
            } catch (IOException e) {
           e.printStackTrace();
                                     }
           }
 }
 
 
 //多线程响应和处理客户端的请求
 public  class Client implements Runnable {
    Socket s;
   DataInputStream dis = null;//初始化变量
   DataOutputStream dos = null;//初始化变量
  private boolean bConnected = false;//初始化操作变量
  
  String str1=null;//用于发送客户端的字符串变量
  
  //用Client方法来建立一条与客户端通信的通道
  public Client(Socket s) {原文请找腾讯32491-14
   this.s = s;
   try {
    dis = new DataInputStream(s.getInputStream());//初始化通信通道
    dos=new DataOutputStream(s.getOutputStream());//初始化通信通道
    DataOutputStream dos = null;//初始化变量
    bConnected = true;//如果建立通道成功,bConnect的值就为true,这是为了在run方法中输出通信通道的内容。
    
   } catch (IOException e) {
               e.printStackTrace();
   }
  }
  
  //服务器端用sendtoclient方法来发送信息给客户端
   public void sendtoclient(String str){
    try {
    dos.writeUTF(str);
   } catch (IOException e) {
    kehu.remove(this);
    System.out.println("对方退出了");
    e.printStackTrace();
   }
   } 
   int i;
  public void run() {
   Client ss=null;
  
   try {
    //通信通道建立成功就不断输出客户端发来的信息。
    while(bConnected) {
     str = dis.readUTF();//读取客户端发来的信息    
      t2.setText(t2.getText()+'\n'+"客户昵称:"+str);//把客户端的信息显示在t2的文本域里面
                      for( i=0;i<kehu.size();i++){//利用for循环服务器把消息发送给每一个已经连接上服务器的客户端。
                       ss=kehu.get(i);   论文网http://www.youerw.com/
                     
                       ss.sendtoclient(str);//调用sendtoclient方法发送消息给每一个客户端
                     
                      }
    }//处理异常部分。
   } catch (EOFException e) {  
    System.out.println("Client closed!");
    kehu.remove(this);
    jb.setText("当前在线人数:"+kehu.size());
     t3.setText(t3.getText()+"\n"+"当前在线人数为:"+kehu.size());
   } catch (IOException e) {
    e.printStackTrace();   } finally {

上一页  [1] [2] [3] 

java聊天程序Socket+Java聊天程序源代码 第3页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。