クライアント情報は入力ストリームを介して読み取られ、それに応じて、出力ストリームを介して実装されます。
サーバークラスコード:
java.io.bufferedReader;インポートjava.io.ioexception; Import java.io.inputStream; import java.io.inputStreamReader; Import java.OutputStream; Import java.io.io.printwriter; Import java.net.serversocket; import java.net.net.net.net.net.net.net.net.net。 java.util.logging.logger;/** * * @author whn6325689 */public class server {// server-side public static void main(string [] args){try {// 1。サーバー側のソケット、つまりServersocketを作成し、バウンドポートを指定し、このポートをリッスンします。 Serversocket Serversocket = new Serversocket(8888); // 2。 Serversocket's Accept()メソッドを呼び出して、クライアントがSystem.out.printlnを接続するのを待つ方法( "==サーバーが起動しようとしています。クライアントが=="); socket serversocket.accept(); // 3。入力ストリームを取得してクライアントが送信したログイン情報を読み取りますinputstream is = socket.getInputStream(); // byte input stream inputstreamreader isr = new inputstreamReader(is); //文字ストリームのバッファレッドリーダーの追加while((info = bufferedreader.readline())!= null){system.out.println( "私はサーバーであり、クライアントが送信した情報は"+info);} socket.shutdowninput(); // 4。出力ストリームを取得して、クライアントのリクエストに応答しますoutputStream os = socket.getOutputStream(); printwriter pw = new printwriter(os); // print streamに変換pw.write( "welcome!"); pw.flush(); // fresh cache // 5。関連するリソースBufferedReader.close(); is.close(); isr.close(); socket.close(); serversocket.close(); os.close(); pw.close(); pw.close();} catch(} catch(ioexception(ioexception(){ogger.getLogger(server.class.getName())。クライアントクラスコード:
java.io.bufferedreader; Import java.io.ioexception; Import java.io.inputStream; Import java.io.inputStreamReader; Import java.outputStream; Import java.io.io.printwriter; Import Java.net.Socket; Import Java.util.logging.level; java.util.logging.logger;/** * * @author whn6325689 */public class client {//クライアントpublic static void main(string [] args){try {// 1。クライアントソケットを作成し、サーバーアドレスとポート番号を指定します。ソケットソケット= new Socket( "127.0.0.1"、8888); // 2。出力ストリームを取得して情報をサーバーに送信しますoutputStream os = socket.getOutputStream(); // byte outputストリーム//印刷ストリームに変換printに変換pw = new printwriter(os); pw.write( "username:admin; password:admin"); pw.flush(); pw.flush();入力ストリームを取得してサーバーの応答情報を読み取りますinputstream is = socket.getinputStream(); bufferedReader br = new inputStreamReader(is)); string info = null;リソースBr.close(); is.close(); pw.close(); os.close(); socket.close();} catch(ioexception ex){olgger.getLogger(client.class.getName())。最初にサーバー側クラスを実行してから、クライアントクラスを実行します。
サーバー側のクラス出力結果:
==サーバーは起動しようとしています。クライアントが接続するのを待っています==私はサーバーです。クライアントが送信した情報は次のとおりです。パスワード:管理者
クライアントクラスの出力結果:
私はクライアントであり、サーバーによって返される情報は次のとおりです。ようこそ!
要約します
上記は、Javaソケットプログラミングサーバー応答クライアントインスタンスコードに関するこの記事の全体的な内容です。すべての人に役立つことを願っています。興味のある友達は引き続きこのサイトを参照できます:
Javaプログラミングソケットは複数のクライアントを実装して同じサーバーコードに接続します
Javaマルチスレッドプログラミングでソケット通信を実装するためのサンプルコード
欠点がある場合は、それを指摘するためにメッセージを残してください。このサイトへのご支援をありがとうございました!