티스토리 뷰

Java

DAO VO DTO Entity

토마토계란 2021. 12. 22. 02:04

DAO (Data Access Object)

DB 접근하는 객체

  • Persistence Layer(DB에 data를 CRUD하는 계층)

repository layer

DTO (Data Transfer Object)

데이터 계층 간 데이터 교환하는 Java Bean

Request, Response 에 사용되는 객체

Presentation model

VO (Value Object)

DTO 와 유사. 단 read-only

Entity

  • domain package
    • 실제 DB 테이블과 매칭될 클래스
    • 최대한 외부에서 Entity 클래스의 getter를 사용하지 않도록 클래스 안에서 필요한 로직 method를 구현한다
      • 단, Domain logic만 가지고 있어야 하고 Presentation logic은 가지고 있어선 안된다.
  • Entity와 DTO를 분리하는 이유
    • View layer(DTO) 와 DB Layer(Entity)를 분리하기 위해
    • 즉 DTO는 Domain Model을 복사한 형태로, 다양한 Presentation Logic을 추가한 정도로 사용하며 Domain Model 객체는 Persistent만을 위해서 사용한다.

'Java' 카테고리의 다른 글

Garbage Collector  (0) 2021.12.22
Reflection  (0) 2021.12.22
Java API 비동기 호출  (0) 2021.12.22
lombok.Builder 로 빌더 패턴 사용한 클래스의 필드를 초기화하고 싶다면  (0) 2021.12.22
Effective Java - Generic (Item 26 ~ 33)  (0) 2021.11.06
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/12   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함