인프런 커뮤니티 질문&답변
VO DTO
작성
·
550
퀴즈
강의에서 설명된 아키텍처에서 Controller(Servlet)의 주요 역할은 무엇일까요?
데이터 구조를 정의하고 데이터를 담는 역할
클라이언트 요청을 받고 처리를 다른 컴포넌트에 위임하는 역할
데이터베이스에 접근하여 데이터를 조작하는 역할
클라이언트에게 보여지는 화면(UI)을 직접 생성하는 역할
답변 1
1
DTO(Data Transfer Object), VO(Value Object) 2개 모두 자료형과 관련이 있습니다.
예를 들면 회원(이름, 이메일, 전화번호)이라는 자료형을 만든다면, 아래처럼
public class MemberDTO{
String name;
String email;
String phone;
}
이런 형식이 되고 객체를 생성한다면 아래처럼 하고 데이터를 저장하면 됩니다.
MemberDTO dto=new MemberDTO();
dto.name="홍길동";
dto.email="aaa@aa.aa";
dto.phone="010-1111-1111";
대략 그림으로 표현한다면 아래처럼되구요.
아래 dto객체를 데이터베이스에 저장을 한다면 DAO에 데이터를 넘겨줘야 되기 때문에
즉 이동(Transfer)을 시켜야 되어서 DTO라는 용어를 쓰는 이유입니다.
name email phone
dto---->|홍길동|aaa@aa.aa|010-1111-1111|
그리고 아래처럼 회원데이터는 하나의 객체로 표현이 되기 때문에 하나의 값(Value)으로도 해석을
할수 있어서 Value Object(VO)라고도 표현을 합니다.
|----------- ---- Value--------------------|
| name email phone |
|홍길동|aaa@aa.aa|010-1111-1111|
어떤것을 사용해도 되구요, VO라고 많이들 사용하고 있습니다.
이해가 되셨을까요?





넵 !! 감사합니다 ~!!