Newer
Older
My_NWP / src / j2 / EchoServer.java
@Motoki Miura Motoki Miura on 22 Sep 2020 1 KB first commit for NWP exp
package j2;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;

public class EchoServer {
    @SuppressWarnings("resource")
    public static void main(String args[]) {
	// ソケットや入出力用のストリームの宣言
	ServerSocket echoServer = null;
	String line;
	BufferedReader br;
	PrintStream os;
	Socket clientSocket = null;

	// ポート9999番を開く
	try {
	    echoServer = new ServerSocket(9999);
	} catch (IOException e) {
	    System.out.println(e);
	}

	while(true) {
	    try {
		// クライアントからの要求を受けるソケットを開く 
		clientSocket = echoServer.accept();
		System.out.println("accept");
		br = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
		os = new PrintStream(clientSocket.getOutputStream());
		// クライアントからのメッセージを待ち、受け取ったメッセージをそのまま返す
		while ((line = br.readLine()) != null) {
		    System.out.println("(Server received) " +line);
		    os.println(line);
		}
	    }
	    catch (IOException e) {
		System.out.println(e);
	    } finally {
		System.out.println("disconnected "+clientSocket.toString());
	    }
	}
    }
}