中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java 中怎么實現多客戶端通信

發布時間:2021-07-20 14:01:17 來源:億速云 閱讀:166 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關Java 中怎么實現多客戶端通信,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

來看服務端的代碼:

import java.net.*;   import java.io.*;   import java.util.*;   public class Jserver3 {   private ServerSocket server;   List sManager = new ArrayList();   public Jserver3(){}   void startServer() //運行服務器   {   try   {   server=new ServerSocket(719);   System.out.println("服務器套接字已創建成功!");   while(true)   {   Socket socket=server.accept();   System.out.println("已經與客戶端連接");   new J_Thread(socket).start();   sManager.add(socket);   System.out.println("當前客戶端連結數:"+sManager.size());   }   }catch(Exception e){}finally   {   try   {   server.close();   }catch(Exception e){}   }   }   public static void main(String[] args) {   Jserver3 server=new Jserver3();   server.startServer();   }   class J_Thread extends Thread//與客戶端進行通信的線程類   {   Socket socket; //套接字引用變量   private DataInputStream reader; //套接字輸入流   private DataOutputStream writer;  //套接字輸出流   J_Thread(Socket socket) //構造函數   {   this.socket=socket;   }   public void run()   {   try   {   reader=new DataInputStream(socket.getInputStream());//獲取套接字的輸入流   writer=new DataOutputStream(socket.getOutputStream());//獲取套接字的輸出流   String msg;   while((msg=reader.readUTF())!=null)//如果收到客戶端發來的數據   {   //向客戶端發送信息   writer.writeUTF("您的情書已經收到");   writer.flush();   System.out.println("來自客戶端:"+msg);   }   }catch(Exception e){}finally   {   try   {   sManager.remove(socket);  //刪除套接字   //關閉輸入輸出流及套接字   if(reader!=null)reader.close();   if(writer!=null)writer.close();   if(socket!=null)socket.close();   reader=null;   writer=null;   socket=null;   System.out.println("客戶端離開");//向屏幕輸出相關信息   System.out.println("當前客戶端的連接數:"+sManager.size());   }catch(Exception e){}   }   }   }   }   import java.net.*;  import java.io.*;  import java.util.*;  public class Jserver3 {  private ServerSocket server;  List sManager = new ArrayList();  public Jserver3(){}  void startServer() //運行服務器  {  try  {  server=new ServerSocket(719);  System.out.println("服務器套接字已創建成功!");  while(true)  {  Socket socket=server.accept();  System.out.println("已經與客戶端連接");  new J_Thread(socket).start();  sManager.add(socket);  System.out.println("當前客戶端連結數:"+sManager.size());  }  }catch(Exception e){}finally  {  try  {  server.close();  }catch(Exception e){}  }  }  public static void main(String[] args) {  Jserver3 server=new Jserver3();  server.startServer();  }  class J_Thread extends Thread//與客戶端進行通信的線程類  {  Socket socket; //套接字引用變量  private DataInputStream reader; //套接字輸入流  private DataOutputStream writer;  //套接字輸出流  J_Thread(Socket socket) //構造函數  {  this.socket=socket;  }  public void run()  {  try  {  reader=new DataInputStream(socket.getInputStream());//獲取套接字的輸入流  writer=new DataOutputStream(socket.getOutputStream());//獲取套接字的輸出流  String msg;  while((msg=reader.readUTF())!=null)//如果收到客戶端發來的數據  {  //向客戶端發送信息  writer.writeUTF("您的情書已經收到");  writer.flush();  System.out.println("來自客戶端:"+msg);  }  }catch(Exception e){}finally  {  try  {  sManager.remove(socket);  //刪除套接字  //關閉輸入輸出流及套接字  if(reader!=null)reader.close();  if(writer!=null)writer.close();  if(socket!=null)socket.close();  reader=null;  writer=null;  socket=null;  System.out.println("客戶端離開");//向屏幕輸出相關信息  System.out.println("當前客戶端的連接數:"+sManager.size());  }catch(Exception e){}  }  }  }  }

看完上述內容,你們對Java 中怎么實現多客戶端通信有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

隆安县| 平潭县| 金华市| 通河县| 大化| 兰州市| 西林县| 托克逊县| 南京市| 九寨沟县| 乡城县| 友谊县| 额济纳旗| 江华| 千阳县| 乳山市| 资讯| 蓝田县| 广昌县| 额济纳旗| 松潘县| 武邑县| 北碚区| 闻喜县| 年辖:市辖区| 修文县| 咸阳市| 昌平区| 老河口市| 普安县| 绥阳县| 平昌县| 五指山市| 长寿区| 南昌县| 奉新县| 商都县| 中西区| 崇州市| 延庆县| 祁东县|