¼Ò¼³ java.net ¼Ò½ºÄڵ堠Socket(TCP)  03. ServerSocket(TCP) Å×½ºÆ® ÇÁ·Î±×·¥  

Á÷Á¢ Echo ÇÁ·Î±×·¥ÀÇ ¼­¹ö¿Í Ŭ¶óÀÌ¾ðÆ® ÀÛ¼ºÇϱâ

EchoServer.java (¼­¹ö ÇÁ·Î±×·¥) 

import java.net.*;
import 
java.io.*;
public class 
EchoServer {
  
public static void main (String args[]) throws 
Exception{
    ServerSocket server = 
new ServerSocket (20000
);
    System.out.println (
"Server Running"
);
    
while (true
) {
      Socket client = server.accept();
      System.out.println (
"Connection from: " 
+ client.getInetAddress());
      DataInputStream dis = 
new 
DataInputStream(client.getInputStream());
      String temp = dis.readUTF();
      DataOutputStream dos = 
new 
DataOutputStream(client.getOutputStream());
      dos.writeUTF(temp);
      dos.writeUTF(temp);
      dos.writeUTF(temp);
      dos.close();
      client.close();
    }
  }
}

C:\javaExample\17>javac EchoServer.java
C:\javaExample\17>java EchoServer
//Ŭ¶óÀ̾ðÆ®ÀÇ Á¢¼ÓÀ» ´ë±â Áß
Server Running
//Ŭ¶óÀÌ¾ðÆ®¸¦ ½ÇÇà½Ã۸é Ãâ·ÂµÊ
Connection from: /127.0.0.1

EchoClient.java (Ŭ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥)

import java.io.*;
import 
java.net.*;
public class 
EchoClient{
  
public static void main(String[] args) throws 
Exception{
    Socket s = 
new Socket("localhost"20000
);
    DataOutputStream dos = 
new 
DataOutputStream(s.getOutputStream());
    dos.writeUTF(args[
0
]);
    DataInputStream dis = 
new 
DataInputStream(s.getInputStream());
    System.out.println(dis.readUTF());
    System.out.println(dis.readUTF());
    System.out.println(dis.readUTF());  
  }
}

C:\javaExample\17>javac EchoClient.java
C:\javaExample\17>java EchoClient ¾È³çÇϼ¼¿ä
¾È³çÇϼ¼¿ä
¾È³çÇϼ¼¿ä
¾È³çÇϼ¼¿ä

¼­¹ö¿¡¼­ ´Ù¸¥ ¼ÒÄÏÀÇ ÀÀ´äÀ» ÇØ ÁÖ±â À§Çؼ­´Â ServerSocketÀÌ ÇÊ¿äÇÏ´Ù.



jabookÀúÀÚ¸íÇÔ
Á¦¸ñ:¼Ò¼³°°Àº¹Ì´ÏÄÚµå
ÀÛ¼ºÀÚ:Àںϸâ¹ö ±è¿Ï±â