[Spring] DAO, DTO, VO란?

PersesTitan·2022년 6월 21일
0

Spring

목록 보기
8/48

DAO

D: Data
A: Access
O: Object
의 약자로 데이터베이스에 접근하는 객체를 말합니다.

DTO

D: Data
T: Transfer
O: Object
의 약자로 데이터, Getter, Setter으로만 이루어진 객체를 말합니다.

예시 (Java)
(롬복을 사용하면 아래 코드 처럼 짧게 사용할 수 있습니다.)
(자바 14부터 record를 이용하여 DTO를 만들 수도 있습니다.)

public class Member {
	private String name;
    private Integer age;
    
    public Member(String name, Integer age) {
    	this.name = name;
        this.age = age;
    }
    
    public void setName(String name) {
    	this.name = name;
    }
    
    public void setAge(Integer age) {
    	this.age = age;
    }
    
    public String getName() {
    	return name;
    }
    
    public Integer getAge() {
    	return age;
    }
}
@AllArgsConstructor
@Getter @Setter
public class Member {
	private String name;
    private Integer age;
}
public record Member(String name, Integer age) {}

VO

V: Value
O: Object
의 약자로 DTO와 다르게 setter가 존재하지 않는다는 특징이 있습니다. 즉 값을 읽는 것만 가능합니다.


DTO -> DAO -> DB

profile
안녕하세요 페르세스 티탄입니다! 부족한 부분이 많이 있겠지만 잘부탁드립니다.

0개의 댓글