본문 바로가기
카테고리 없음

자바로 TCP Fixed Length 전문 호출하기 (쉽고 친절한 설명!)

by 월백브리핑 2025. 3. 11.

안녕하세요! 😊 오늘은 자바(Java)를 사용하여 TCP Fixed Length 방식으로 데이터를 주고받는 방법을 쉽게 설명해 드릴게요! 소켓 프로그래밍이 처음이라도 걱정하지 마세요. 하나씩 차근차근 설명해 드릴게요! 📚

목차



1. TCP Fixed Length란? 🤔

TCP Fixed Length는 고정된 길이의 데이터를 송수신하는 방식이에요. 즉, 정해진 길이만큼 데이터를 보내고 받아야 한다는 의미죠. 예를 들어, 20바이트로 정해졌다면, 20바이트를 꼭 맞춰서 보내야 해요. 길이가 부족하면 공백(빈칸)으로 채우기도 해요.

📌 특징

특징 설명
고정된 길이 정해진 바이트 수를 반드시 지켜야 함
빠르고 안정적 데이터 크기가 일정해서 처리 속도가 빠름
패딩 필요 부족한 길이는 공백 등으로 채움

2. 개발 환경 설정 🛠

자바에서 TCP 통신을 하기 위해 필요한 환경을 먼저 설정해볼까요? 🎉

📌 준비물

  • JDK 8 이상 설치 (다운로드)
  • IDE (이클립스, 인텔리제이 등)
  • 서버와 클라이언트를 실행할 환경

3. 자바 코드 예제 ✍️

이제 본격적으로 자바 코드를 작성해볼게요! 서버와 클라이언트를 따로 만들어야 해요.

✅ 서버 코드

import java.io.*;

import java.net.*;

public class FixedLengthServer {

    public static void main(String[] args) throws IOException {

        ServerSocket serverSocket = new ServerSocket(5000);

        System.out.println("서버가 시작되었습니다! 🚀");

        while (true) {

            Socket socket = serverSocket.accept();

            BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));

            String receivedData = reader.readLine();

            System.out.println("클라이언트로부터 받은 데이터: " + receivedData);

            socket.close();

        }

    }

}

✅ 클라이언트 코드

import java.io.*;

import java.net.*;

public class FixedLengthClient {

    public static void main(String[] args) throws IOException {

        Socket socket = new Socket("localhost", 5000);

        BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));

        String data = "HelloWorld12345    "; // 총 20바이트

        writer.write(data);

        writer.newLine();

        writer.flush();

        

        System.out.println("데이터 전송 완료! 🎯");

        socket.close();

    }

}

4. 실행 및 테스트 방법 🎯

코드를 실행하는 방법을 알려드릴게요! 🚀

  1. 서버를 먼저 실행하세요.
  2. 클라이언트를 실행해서 서버에 데이터를 보내세요.
  3. 서버 콘솔에 받은 데이터가 출력되는지 확인하세요.

5. 정리 및 마무리 ✅

오늘은 자바 TCP Fixed Length 방식으로 데이터를 주고받는 방법을 배웠어요! 🎉

📌 핵심 정리

  • TCP Fixed Length는 데이터를 정해진 길이로 보내야 한다.
  • 자바에서 ServerSocketSocket을 사용해 구현할 수 있다.
  • 클라이언트는 BufferedWriter를 사용해 데이터를 보낸다.

이제 여러분도 TCP 소켓 프로그래밍을 할 수 있어요! 더 궁금한 점이 있으면 언제든 질문해주세요. 🚀