DAO VO DTO

jaeyong Lee·2023년 11월 10일

DAO(Data Access Object)

데이터 베이스와의 상호작용을 담당하는 객체

일반적으로 VO와 DTO같은 객체를 처리합니다. 데이터 베이스에 접근해서 데이터들의 CRUD작업을 수행합니다. Java에서는 JDBC(Java Database Connectivity)를 사용하여 데이터베이스와 통신하는데, 이 때 DAO패턴이 자주 활용됩니다. 하지만 최근에는 Java에서 hibernate, mybatis와 같은 프레임워크가 등장하면서 DAO패턴이 덜 강조되기도 합니다.

VO(Value Object)

보관용도 : 값을 저장하고 있는 객체

VO 혹은 Entity라고 합니다.
객체 지향 프로그램에서는 데이터를 객체라는 단위로 처리합니다.
데이블의 한 행(row)가 자바 프로그램에서는 하나의 객체가 됩니다.
데이터 베이스는 하나의 Entity라고 합니다. 자바 프로그램에서는 이를 처리하기 위해
테이블과 유사한 구조의 클래스를 만들어서 객체로 처리하는 방식을 사용하고 , 이 때 만들어진 객체는 값을 보관하는 용도라는 의미에서 Value Object라고 합니다.

DTO(Data Transfer Object)

데이터를 전송라는 객체

VO가 DTO로 변환이 되고 ModelMapper는 그런 작업을 하게 해줍니다.
DTO를 VO로 변환 할 수 도 있습니다.
ModelMapper는 Maven이나 Gradle같은 빌드 도구들 사용하여 프로젝트에 ModelMapper라이브러리를 가져올 수 있습니다.
이렇게 변환되면 데이터 전송에 최적화할 수 있습니다.

0개의 댓글