JAVA/SPRING

[SPRING] DTO, VO 차이

오선지♬ 2022. 7. 26. 18:22
728x90
반응형

DTO ( Data Transfer Object )

순수하게 데이터를 담아 계층간으로 전달하는 객체이다.

로직을 갖고 있지 않은 순수한 데이터 객체이며 메서드로는 getter / setter 만을 갖는다.

전달 용도로만 사용하기 때문에 다른 로직이 필요 없는 것이다.

 

VO ( Value Object )

값 그자체를 나타내는 객체이다.

DTO와 다르게 로직을 포함할 수 있으며, 불변성의 보장을 위해 생성자를 사용하여야 한다.

VO는 서로 다른 이름을 갖는 인스턴스라도 모든 속성값이 같다면 ( 필드 값이 같다면 ) 두 인스턴스는 

같은 객체라는것이 핵심. 

 

 

 

 

참고

https://maenco.tistory.com/entry/Java-DTO%EC%99%80-VO%EC%9D%98-%EC%B0%A8%EC%9D%B4

 

[JAVA] DTO와 VO의 차이

데이터를 위한 객체를 만들다 보면 항상 DTO와 VO를 혼용해서 쓰고 하는데, 어떤 것이 맞는 것인지 항상 헷갈렸다. 한번 정리해보면서 이 둘의 차이는 무엇이고 어떤 상황에서 쓰는 것이 가장 이

maenco.tistory.com

 

728x90
반응형

'JAVA > SPRING' 카테고리의 다른 글

[SPRING]@RequiredArgsConstructor  (0) 2022.12.19
[SPRING] JWT 토큰  (0) 2022.11.05
[SPRING] DI (Dependency Injection ) 개념  (0) 2022.07.23
Model, ModelMap  (0) 2022.05.01
[SPRING] @Controller와 @RestController  (0) 2022.03.29