JavaのSocketのメソッドと機能を詳しく解説

黄舟
リリース: 2017-09-06 09:52:12
オリジナル
2050 人が閲覧しました

1.java.net.Socket; ソケットは TCP 通信プロトコルをカプセル化し、TCP に基づいてリモート コンピューター上のサーバー アプリケーションと接続して通信するために使用できます。
ソケットのインスタンス化は、サーバーとの接続を確立するプロセスです。ここでは、サーバー アドレス情報を指定するために 2 つのパラメーターを渡す必要があります:
パラメーター 1: サーバー コンピューターのアドレス
パラメーター 2: サーバー コンピューター上で実行されているサーバー アプリケーションによって開かれたサービス ポート
サーバー コンピューターは IP 経由で見つけることができます。ポートを使用して、サーバー端末上で実行されているサーバー アプリケーションに接続できます。インスタンス化は接続プロセスであるため、サーバーが応答すると、ここで Socket をインスタンス化すると例外がスローされます。
Socket は次のメソッドを提供します:

OutputStream getOutputStream()
ログイン後にコピー

Socket を通じて取得された入力ストリームから書き込まれたバイトは、ネットワークを通じてリモート コンピューターに送信されます。これはサーバーに送信することと同じです。
2. サーバー上で実行される java.net.ServerSocket;
主に 2 つの機能があります:
1. 外部サービス ポートをシステムに適用し、クライアント ソケットはこのポートを介してサーバー プログラムとの接続を確立します。
2. サービス ポートをリッスンします。クライアント Socket がこのポート経由で接続を確立しようとすると、serverSocket が感知して、クライアントと通信するための Socket をインスタンス化します。
ServerSocket が提供するメソッド:

Socket accept()
ログイン後にコピー

このメソッドは、クライアントが接続するまでサービス ポートをリッスンするために使用されるブロック メソッドです。ここでソケットが返され、それを通じてクライアントと通信できます。
Socket を介して入力ストリームを取得し、読み取られるデータはリモート コンピューターから送信されたデータです。これは、読み取り時にクライアントによって送信されたデータと同等です。

InputStream in = socket.getInputStream();
ログイン後にコピー

バッファ ストリームを使用してクライアントから送信された文字列を読み取る場合、クライアントが切断されるまで br.readLine メソッドはブロックされます。クライアントシステムによって異なります。 Windows クライアントが切断されると、メソッドは例外をスローします。Linux クライアントが切断されると、メソッドは null を返します。

以上がJavaのSocketのメソッドと機能を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート