POJO(Plain Old Java Object) 클래스는 "단순한 자바 객체"라는 의미로, 특정 프레임워크나 기술에 종속되지 않는 순수한 자바 객체를 뜻합니다. POJO 클래스는 주로 데이터를 저장하고 전달하는 목적으로 사용됩니다.
POJO의 특징
- 프레임워크 종속성 없음: POJO는 특정 프레임워크나 라이브러리의 요구사항을 따르지 않으며, 순수 자바 코드로 작성됩니다.
- 간단한 구조: 필드, 기본 생성자, getter, setter 메서드로 구성되어 있으며, 복잡한 상속 관계나 인터페이스 구현이 없습니다.
- 접근 제어자 사용: 보통 필드는 private으로 선언해 외부에서 직접 접근을 막고, getter와 setter 메서드를 통해 간접적으로 접근합니다.
- 비즈니스 로직 없음: 주로 데이터 전달 및 저장을 위한 용도로 사용되며, 복잡한 로직을 포함하지 않습니다.
POJO의 예시
POJO 클래스는 데이터를 담고 전달하는 목적에 충실하기 때문에, 예를 들어 사용자의 정보를 담는 User 클래스는 다음과 같은 구조를 가질 수 있습니다.
public class User {
private String name;
private int age;
public User() {}
public User(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;
}
}
POJO와 JavaBeans의 차이점
JavaBeans는 POJO의 일종이지만 몇 가지 추가 규칙을 따릅니다.
- 기본 생성자 필수: JavaBeans는 기본 생성자를 가져야 하며, 보통 public이어야 합니다.
- Serializable 인터페이스 구현: JavaBeans는 직렬화를 지원하기 위해 Serializable 인터페이스를 구현해야 하는 경우가 많습니다.
- Getter/Setter 규칙: 모든 필드에 대해 getter와 setter 메서드를 제공해야 합니다.
POJO는 JavaBeans보다 규칙이 적어 더 유연하게 사용할 수 있습니다.
'Spring > Spring 공부' 카테고리의 다른 글
@Qualifier (0) | 2025.03.18 |
---|---|
Hibernate 간단하게 (4) | 2024.11.04 |
Lombok 정의와 어노테이션 기능 정리 (2) | 2024.10.30 |
Swagger , http://localhost:8080/swagger-ui/ 404오류 (2) | 2024.10.23 |
Jacoco (1) | 2024.10.23 |