所谓可以多客户端,就是需要在服务器端进行多线程编程,每一个客户端对应一个线程。如果要实现时时通讯和话,无论是客户端还是服务器端都要至少两个线程,主线程进行发送信息,子线程进行获取信息,这样可以保证时时通信.
下面贴出我的代码:
客户端:
服务器端:
- package com.lip;
-
- import java.io.IOException;
- import java.net.ServerSocket;
- import java.net.Socket;
-
- public class Server
- {
-
-
- public static int PORT = 8000;
- public static String HOST = "127.0.0.1";
-
- public static void main(String[] args)
- {
- ServerSocket serverSocket = null;
- Socket socket = null;
- try
- {
- serverSocket = new ServerSocket(PORT);
-
- while (true)
- {
- System.out.println("Waiting Client");
- socket = serverSocket.accept();
- System.out.println("Client Conect!");
- new ThreadedServer(socket);
- }
- }
- catch (Exception e)
- {
- try
- {
- socket.close();
- }
- catch (IOException e1)
- {
- e1.printStackTrace();
- }
- }
- finally
- {
- try
- {
- serverSocket.close();
- }
- catch (IOException e)
- {
- e.printStackTrace();
- }
- }
-
- }
-
- }
辅助线程:
现在就可以实现多客户端和服务器端通信了 ,不过客户端和客户端的通信暂时还没有搞懂,还要继续去学习
[Java ] 通信
原文:http://www.cnblogs.com/feifeidxl/p/4745850.html