CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  J2SE / 基础类

net help

楼主mountainhawk()2002-04-12 16:30:00 在 Java / J2SE / 基础类 提问

我在客户端程序中向服务器发送信息,而后获得服务器发送的来自所有客户端的信息最好能有例子。 问题点数:50、回复次数:3Top

1 楼GJA106(中文字符)回复于 2002-04-12 17:30:30 得分 50

服务端--非常简单的  
   
  import   java.io.*;  
  import   java.net.*;  
  import   java.util.Vector;  
   
  public   class   TestSocketServer  
  {  
  ServerSocket   mServerSocket   =   null;  
  Socket               mSocket   =   null;  
  public       Vector   mAllClientVector   =   new   Vector(5,2);//存放所有客户端信息  
   
  public   TestSocketServer()  
  {  
    try  
    {  
    mServerSocket   =   new   ServerSocket(9009,15);  
    mSocket   =   mServerSocket.accept();  
    ReceiveClientThread   rCT   =   new   ReceiveClientThread(this,mSocket);  
    rCT.start();  
    }  
    catch(Exception   eSocket)  
    {  
    }  
  }  
   
  public   static   void   main(String   []   args)  
  {  
  new   TestSocketServer();  
  }  
  }  
   
  class   ReceiveClientThread   extends   Thread  
  {  
  private   TestSocketServer   mTestSocketServer   =   null;  
  private   Socket   mSocket   =   null;  
  private   boolean   mRunning   =   true;  
  DataInputStream       dis   =   null;  
  DataOutputStream     dos   =   null;  
  Vector   mVector   =   null;  
  public   ReceiveClientThread(TestSocketServer   pTestSocketServer,Socket   pSocket)  
  {  
  this.mTestSocketServer   =   pTestSocketServer;  
  this.mSocket   =   pSocket;  
  }  
   
  public   void   run()  
  {  
  while(true)  
  {  
  if(!mRunning)  
  {  
  //在内存中删除相应的客户端信息  
  break;  
  }  
  try  
  {  
    dis   =   new   DataInputStream(mSocket.getInputStream());  
    ObjectInputStream   ois   =   new   ObjectInputStream(dis);  
    mVector   =   (Vector)ois.readObject();  
    for(int   i   =   0   ;   i   <   mVector.size();   i   ++)  
    {  
    System.out.println(mSocket.getInetAddress().getHostAddress()+"输出:"   +   (String)mVector.elementAt(i));  
    }  
    //保存客户端信息:存入文件或临时内存中  
                this.mTestSocketServer.mVector.addElement(mAllClientVector);  
    //把mAllClientVector中的所有信息返回给客户端,自己去实现吧.  
  }  
  catch(Exception   iDios)  
  {  
  }  
  }  
  }  
   
  }Top

2 楼GJA106(中文字符)回复于 2002-04-12 17:31:24 得分 0

接收部分自己去实现。不太难的。  
   
  import   java.io.*;  
  import   java.net.*;  
  import   java.util.Vector;  
   
  public   class   TestSocketClient  
  {  
      Socket               mSocket   =   null;  
      DataInputStream       dis   =   null;  
      DataOutputStream     dos   =   null;  
      Vector   mVector   =   new   Vector(5,1);  
      public   TestSocketClient(String   []   args)  
      {  
            mVector.addElement("aa");  
            mVector.addElement("bb");  
            try  
            {  
                mSocket   =   new   Socket("192.188.0.5",9009);  
   
                dos   =   new   DataOutputStream(mSocket.getOutputStream());  
                ObjectOutputStream   oos   =   new   ObjectOutputStream(dos);  
                oos.writeObject(mVector);  
            }  
            catch(Exception   eSocket)  
            {  
            }  
      }  
   
        public   static   void   main(String   []   args)  
      {  
   
          new   TestSocketClient(args);  
      }  
  }  
  Top

3 楼GJA106(中文字符)回复于 2002-04-12 18:47:02 得分 0

服务端的  
    this.mTestSocketServer.mVector.addElement(mAllClientVector);  
  改为:  
  this.mTestSocketServer.mAllClientVector.addElement(mVector);Top

相关问题

  • help net?
  • Help! insert statement syntax in c#.net
  • .NET
  • .net
  • .NET?
  • .net
  • iis服务器安装.net 错误!!!help
  • vc#.net中datagrid控件中的onUpdateCommand事件,乱乱乱!!help me!
  • TO:net_lover!
  • to net_steven:

关键词

  • 客户
  • vector
  • socket
  • 信息
  • null
  • testsocketserver
  • receiveclientthread
  • msocket
  • mserversocket
  • 客户端

得分解答快速导航

  • 帖主:mountainhawk
  • GJA106

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo