목표
DAO, DTO, VO 의 개념에 대해 알아보자
DTO랑 VO의 차이는 뭐지??
DAO(Data Access Object)
DB의 data에 접근하기 위한 객체.
DB에 접근하기 위한 로직을 분리하기 위해 사용.
직접 DB에 접근하여 data를 insert, delete, select등 기능 수행.
MVC패턴의 Model에서 이와 같은 일을 수행.
DTO(Data Transfer Object)
계층간 데이터 교환을 위한 자바 빈즈(Java Beans)를 의미.
로직을 가지지 않는 데이터 객체.
Database에서 Data를 얻어 Service나 Controller 등으로 보낼때 사용하는 객체.
getter/setter 메소드만 가진 클래스.
VO(Value Object)
:값 오브젝트로 값을 위해 쓰임.
Read-Only특징을 가짐(사용하는 도중에 변경 불가능하며, 오직 읽기만 가능)
DTO와 유사하지만 VO는 getter기능만 존재.
DTO vs VO
:DTO는 인스턴스 개념이고 VO는 리터럴 값 개념이다.
VO는 값들에 대해 Read-Only를 보장해줘야 존재의 신뢰성이 확보되지만 DTO의 경우는 단지 데이터를 담는 그릇의 역할.
값은 그저 전달되어야 할 대상일 뿐이다.
'코딩조각' 카테고리의 다른 글
[web] Dynamic IP와 Static IP (0) | 2023.03.14 |
---|---|
[DB] 자동커밋, 수동커밋 이란? (0) | 2023.02.09 |
[oracle] oracle SQL 유용한 문자함수 숫자함수 (0) | 2023.01.02 |
[Spring Security] Spring security의 간단한 과정 (0) | 2022.12.27 |
Index 의 Cluster Index와 Non-Cluster Index를 구분하는 가장 쉬운 방법 (0) | 2022.12.10 |