簡體   English   中英

如何在Java中偵聽IP和端口? 與ServerSocket?

[英]How to listen on IP and Port in Java ? with ServerSocket?

我正在用Java創建客戶端/服務器聊天(多線程)應用程序。

我想聽特定端口和IP上的客戶端。

當我這樣做時:

ServerSocket serverSocket = new ServerSocket(port);
Socket socket = serverSocket.accept();      // accept connection

// more code 

這是否意味着我正在監聽的IP是127.0.0.1 localhost

從ServerSocket對象的構造函數的角度來看,我們有3種構造函數:

public ServerSocket(int port) throws IOException
public ServerSocket(int port, int backlog) throws IOException
public ServerSocket(int port, int backlog, InetAddress bindAddr)  throws IOException

如果要從其他 IP地址獲取客戶端,應該使用什么構造函數

這個 :

public ServerSocket(int port) throws IOException

或者這個:

public ServerSocket(int port, int backlog, InetAddress bindAddr)  throws IOException

非常感激

這是否意味着我正在監聽的IP是127.0.0.1? 即本地主機?

否。這意味着您正在偵聽主機的所有IP地址。

如果要從其他IP地址獲取客戶端,應該使用什么構造函數?

這個。

InetAddress inetAddress = InetAddress.getByName("192.168.1.1");
int port =8081;
serverSocket = new ServerSocket(port,5,inetAddress);

這是您的意思嗎?可能會有所幫助。 第二種說法是-請求傳入連接隊列的最大長度(來自jdc)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM