728x90
300x250
Java 프로젝트에서 DB와 연동되는 부분을 사용하다보면 VO와 DTO를 자주 사용하게 된다.
오늘은 VO , DTO의 차이점에 대해서 포스팅하겠다.
사실 둘은 거의 같다.. 그치만 사용 용도에따라 약간씩의 차이가 있다고 보면 된다.
(1) VO (Value Object)
: 이름 그대로 값 객체이며 데이터를 담고있는 객체이다.
DB의 테이블 레코드와 정확히 대응되는 Java의 Class이다.
값이 변하지 않고 Read Only 특성이 있다.
(2) DTO (Data Transfer Object)
: 데이터 전송을 위한 객체로, 화면과 Controller 사이를 이동할 때 주고받기위한 일종의 객체이다.
주로 비동기 처리를 할때 많이 사용한다.
회사마다 개인마다 VO와 DTO를 사용하는 목적과 용도는 조금씩 상이하다.
내가 내린 결론은,
VO는 DB와 연동된 Data를 받아올 때 사용하는 객체이며,
DTO는 받아온 VO를 Back-end내에서 (비즈니스 로직 등..) 매핑/처리가 필요할 경우에 변환하여 사용하는 객체이다.
728x90
'프로그래밍 > Spring Framework' 카테고리의 다른 글
[Spring] 스프링 AOP이란? - 적용방법 | 관점지향 프로그래밍 | AOP 어노테이션 (0) | 2022.05.12 |
---|---|
[Spring] 의존성 주입, DI (Dependency Injection) 란? (0) | 2020.08.14 |
[Spring] Mybatis 연동 시 오류 해결방법 (3) | 2020.07.26 |
[Spring] 스프링 게시판 예제 (3) - DB연동 + View단 출력 (0) | 2020.07.25 |
[Spring] Maven 빌드, 인스톨 시 fatal 오류 해결법 (0) | 2020.07.25 |