Java

JavaBean과 POJO

오개발 2024. 11. 4. 11:34

공부중에 POJO 라는 개념을 스프링에서 이러한 개념으로 구현 했다는 글을 본적이 있지만 공부 하는 겸 글을 작성해본다.

 

 

1. POJO ( Plain Old Java Object )

- 특별한 요구사항 없이 순수 자바 객체로 작성한 클래스이고 복잡한 상속이나 인터페이스 없는 단순한 객체를 뜻한다.

 

public class Person {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

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

 

 

2. JavaBean

 

JavaBean은 POJO의 일종이지만, 특정 규칙을 따라야 하는 객체입니다. JavaBean의 규칙은 주로 자바빈이라는 규약을 따르는 데 중점을 둡니다.

 

1. 규칙은 모든 맴버변수에 private 를 가져야 하고 외부에서 직접 접근하지 않고 getter setter을 통해 접근을 가능하게 해야된다.

2. 생성자는 파라미터가 없는 기본 생성자가 필요 하다.

3. 주로 DTO로 많이 사용된다.

 

public class ProductBean {
    private String name;
    private double price;

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

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }
}

 

 

 

결론 :

제 생각엔 POJO란 간단하고 가벼운 구조의 자바 객체로 코드의 복잡성을 줄이는곳에 초점을 두고

JavaBean은 POJO +@ 로 명확한 규칙에 따르는 데이터 전송 규격이라고 생각이 됩니다.

 

'Java' 카테고리의 다른 글

자바 리플렉션(reflection)에 대해서 찾아보기  (2) 2024.11.08
공변과 반공변에 대해  (0) 2024.11.05
ArrayList의 자동 크기 증가  (0) 2024.10.31
부동소수점에서 엡실론  (1) 2024.10.31
오토 박싱 & 오토 언박싱  (1) 2024.10.30