Spring의 여러 객체들
- 여기저기서 들어봤지만 개념이 머리에 정리되지 않아 기술한다
POJO (Plain Old Java Object)
특정 기술에 종속되지 않는 순수한 자바 객체
- 기본 생성자를 가진다
- 아무것도 상속받거나, 구현하지 않아야 한다
- getter랑 setter만 존재 해야한다
1public class Person {
2 private String name;
3 private int age;
4
5 public Person() {
6 }
7
8 public String getName() {
9 return name;
10 }
11
12 public int getAge() {
13 return age;
14 }
15
16 public void setName(String name) {
17 this.name = name;
18 }
19
20 public void setAge(int age) {
21 this.age = age;
22 }
23}
24
DAO (Data Access Object)
DB에 접근하는 객체
- CRUD로직을 담당하는 객체이다
DTO (Data Transfer Object)
계층 간 데이터 교환을 위한 객체
- 로직을 갖지 않는 순수한 데이터 객체이다
- getter, setter이외의 로직이 필요없다
VO (Value Object)
값 자체를 표현하는 객체
- Read-Only를 보장한다
- 모든 필드의 값이 동일한 두 객체는 같다
Entity
DB의 Column을 필드로 가지는 객체