Newer
Older
NWP / src / j2 / EchoServer.java
@Motoki Miura Motoki Miura on 22 Aug 2020 1 KB ThreadEcho is necessary?
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 {
    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);
        }
 
        // クライアントからの要求を受けるソケットを開く 
        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());
        }
    }
}