Javaでは、バインド操作とは何かを知る必要があります。
ServerSocket.bind()
Javadocから:
ServerSocketを特定のアドレス(IPアドレスとポート番号)にバインドします。
名前へのバインドとEJB(例から)とは何かを知っています。これは似ていますか?
ローカルアドレスをサーバーソケットにバインドする方法
使ってます:
providerSocket.bind(new InetSocketAddress("192.168.0.1", 0));
そして私はAlready Bound
エラー!
接続には、クライアントとサーバーが必要です。
クライアントがサーバーにデータを送信するには、クライアントにサーバーのアドレスとポート番号が必要です。同様に、サーバーがクライアントにデータを送信するには、サーバーにクライアントのアドレスとポート番号が必要です。
ソケットのバインドとは、ソケットにアドレスとポート番号を割り当てることを意味します。
あなたがするとき:
providerSocket.bind(new InetSocketAddress("192.168.0.1", 0));
Already Bound
エラーは、providerSocketにすでにアドレスとポート番号があり、新しいアドレス/ポート番号の割り当てが許可されていないためです。 ServerSocketが作成されると、バインドされます(パラメーターなしのコンストラクター Java.net.ServerSocket.ServerSocket() を使用する場合を除く)。
ServerSocket()
ではなくServerSocket(666,9)
を空白のままにする必要があります。2番目の例を実行しないと、機能しません。 ServerSocketの括弧内には何も入力しません。