POJO(Plain Old Java Object)란?

특별한 제약 없이 순수 자바 언어로만 작성된 객체로, 특정 프레임워크나 기술에 의존하지 않고 독립적으로 동작 가능한 객체를 의미한다.

POJO는 간단한 자바 객체로, 데이터의 저장과 전달을 목적으로 하며 주로 도메인 모델이나 DTO(Data Transfer Object)로 사용된다.


📌 POJO의 특징

  • 특정 프레임워크나 기술에 종속되지 않은 독립적인 객체
  • 필드(속성)와 메서드(동작)만으로 구성
  • 기본 생성자를 가짐 (필수는 아니지만 일반적)
  • 접근자(getter)와 변경자(setter)를 사용해 데이터를 접근하고 변경

📌 POJO의 사용 예시

🎯 기본 형태의 POJO

public class User {
    private String username;
    private int age;

    public User() {
        // 기본 생성자
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

📌 POJO 활용 범위

  • 데이터 전송 객체(DTO)로서 데이터 전송 시 사용
  • 도메인 객체(Domain Object)로서 비즈니스 로직 구현 시 사용
  • 데이터베이스 엔티티(Entity)로 활용 가능(JPA에서 어노테이션 추가하여 사용)

📌 Java Bean과의 차이점

구분 POJO Java Bean
특징 단순 자바 객체 POJO 중 특별한 규칙을 따르는 객체
필수 조건 제약 조건 없음 기본 생성자, getter/setter 메서드 필수
용도 데이터 전달 및 비즈니스 로직 GUI 도구나 특정 프레임워크에서 사용

📌 장점과 단점

✅ 장점

  • 프레임워크 종속성을 최소화하여 높은 유연성 확보
  • 객체 지향 원칙에 충실한 설계 가능

❌ 단점

  • 객체의 특성상 단순 구조로 복잡한 처리는 별도의 서비스 객체 필요
  • 추가 로직 처리를 위해 별도의 관리 로직이 요구됨

📌 연결 문서

태그: ,

카테고리:

업데이트:

댓글남기기