Spring(JPA), Android, BXM 다양한 Framework에서 공통적으로 보이는
Entity, DTO(VO), DAO, Repository라는 단어는 무엇을 의미하는 것인가?
데이터베이스(DB)를 사용하는 개발자라면 자주 접하게 되는 필수 용어
Entity
데이터베이스(DB) 테이블에 존재하는 Column들을 필드로 가지는 객체
테이블과 1:1 매칭 (대체로 테이블에 존재하는 컬럼)
DTO(VO)
Data Transfer Object는 계층간 데이터 교환 역할을 수행
Entity를 가지고 만드는 일종의 Wrapper
계층간 데이터 교환을 목적으로 하기 때문에 별도의 로직이 존재하지 않음
DAO
Data Access Object는 실제 DB에 접근하는 객체
Persistence Layer에 객체 지향적인 인터페이스를 제공하여,
Domain Model Layer와 Persistence layer를 분리하여 Separation of concerns원리를 만족
Repository
다양한 DAO의 집합
하나의 명령이 DAO의 여러 명령과 매핑
반응형