[java] TCP 소켓 프로그래밍의 특징과 예시 코드

TCP(Transmission Control Protocol)는 신뢰성 있는 데이터 통신을 지원하는 프로토콜로, TCP 소켓을 사용하여 네트워크 상에서 양방향 통신이 가능합니다. 여기에서는 Java를 사용하여 TCP 소켓 프로그래밍을 하는 방법과 예시 코드를 살펴보겠습니다.

특징

TCP 소켓 프로그래밍의 주요 특징은 다음과 같습니다:

예시 코드

다음은 Java를 사용하여 간단한 TCP 클라이언트와 서버를 구현한 예시 코드입니다.

TCP 서버

import java.io.*;
import java.net.*;

public class TCPServer {
    public static void main(String[] args) {
        try {
            ServerSocket serverSocket = new ServerSocket(9999);
            System.out.println("Server is running...");

            Socket socket = serverSocket.accept();

            BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
            PrintWriter out = new PrintWriter(socket.getOutputStream(), true);

            String message = in.readLine();
            System.out.println("Received message: " + message);

            out.println("Message received!");

            socket.close();
            serverSocket.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

TCP 클라이언트

import java.io.*;
import java.net.*;

public class TCPClient {
    public static void main(String[] args) {
        try {
            Socket socket = new Socket("localhost", 9999);

            BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
            PrintWriter out = new PrintWriter(socket.getOutputStream(), true);

            out.println("Hello, Server!");

            String response = in.readLine();
            System.out.println("Server response: " + response);

            socket.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위 예시 코드는 9999 포트를 사용하여 클라이언트와 서버 간의 TCP 통신을 구현한 것입니다.

TCP 소켓 프로그래밍을 할 때는 네트워크 통신의 신뢰성과 안정성을 고려하여 예외 처리를 충분히 고려해야 합니다.

참고 자료

TCP 소켓 프로그래밍은 신뢰성 있는 네트워크 통신을 위해 매우 중요한 기술이며, Java를 이용하여 쉽게 구현할 수 있습니다.