[Spring] Entity vs DTO vs VO

    Entity vs DTO vs VO 비교 알아보기

    • Entity : 비즈니스 로직을 포함하는 도메인 객체
    • DTO (Data Transfer Object) : 데이터 전송을 위한 객체
    • VO (Value Object) : 값(Value)을 나타내는 객체

    Entity는 데이터베이스와 매핑되는 도메인 객체로, 비즈니스 로직을 포함합니다. 즉, 데이터베이스의 테이블과 1:1로 매핑되며, 영속성(Persistence)을 가지고 있습니다. 이러한 Entity는 주로 서비스 계층(Service)에서 사용됩니다.

    DTO는 계층 간 데이터 전송을 위한 객체로, Entity의 일부 데이터나 여러 개의 Entity에서 가져온 데이터를 조합하여 생성됩니다. DTO는 클라이언트와 서버 간의 데이터 교환을 위한 목적으로 사용되며, 서비스 계층(Service)과 컨트롤러(Controller)에서 사용됩니다.

    VO는 값(Value)을 표현하기 위한 객체입니다. 즉, 값을 담기 위한 객체로, 상태를 가지지 않으며, 불변성(Immutable)을 유지합니다. VO는 주로 클라이언트와 서버 간의 데이터 전송을 위한 객체로 사용됩니다.

    댓글

    Designed by JB FACTORY