JAVA
[JAVA] DAO, DTO, VO 개념
배씌
2024. 5. 8. 15:47
1. DAO(Data Access Object)
데이터베이스의 data에 접근하기 위한 객체.
데이터베이스 접근을 하기 위한 로직과 비즈니스 로직을 분리하기 위해 사용.
사용자는 자신이 필요한 Interface를 DAO에게 던지고 -> DAO는 이 Interface를 구현한 객체를 사용자에게 편리하게 사용할 수 있도록 반환.
-> 직접 Database에 접근하여 data를 삽입, 삭제, 조회 등 조작할 수 있는 기능을 수행.
(주로 MVC 패턴의 Model에서 이러한 일을 수행)
2. DTO(Data Transfer Object)
VO라고도 표현하며 계층 간 데이터 교환을 위한 자바 빈즈(Java Beans).
데이터베이스 레코드의 데이터를 매핑하기 위한 데이터 객체를 말함. DTO는 보통 로직을 가지고 있지 않고, data와 그 data에 접근을 위한 getter, setter만 가지고 있음.
-> Database에서 data를 얻어 Service 나 Controller 등으로 보낼 때 사용하는 객체