web-dev-qa-db-ja.com

ソケットバインドとは何ですか?アドレスをバインドする方法は?

Javaでは、バインド操作とは何かを知る必要があります。

ServerSocket.bind()

Javadocから:

ServerSocketを特定のアドレス(IPアドレスとポート番号)にバインドします。

名前へのバインドとEJB(例から)とは何かを知っています。これは似ていますか?

ローカルアドレスをサーバーソケットにバインドする方法

使ってます:

providerSocket.bind(new InetSocketAddress("192.168.0.1", 0));

そして私はAlready Boundエラー!

14
Muhammad Hewedy

接続には、クライアントとサーバーが必要です。

クライアントがサーバーにデータを送信するには、クライアントにサーバーのアドレスとポート番号が必要です。同様に、サーバーがクライアントにデータを送信するには、サーバーにクライアントのアドレスとポート番号が必要です。

ソケットのバインドとは、ソケットにアドレスとポート番号を割り当てることを意味します。

あなたがするとき:

providerSocket.bind(new InetSocketAddress("192.168.0.1", 0));

Already Boundエラーは、providerSocketにすでにアドレスとポート番号があり、新しいアドレス/ポート番号の割り当てが許可されていないためです。 ServerSocketが作成されると、バインドされます(パラメーターなしのコンストラクター Java.net.ServerSocket.ServerSocket() を使用する場合を除く)。

25
Pacerier

ServerSocket()ではなくServerSocket(666,9)を空白のままにする必要があります。2番目の例を実行しないと、機能しません。 ServerSocketの括弧内には何も入力しません。

0
pratham12