[Spring] DAO, DTO, VO, Entity 란?

enjoy89·2023년 1월 13일
3
post-thumbnail
post-custom-banner

DAO(Data Access Object)

  • 데이터에 접근하기 위한 객체
  • 직접 데이터베이스에 접근하여 데이터를 삽입, 삭제, 조회 등의 기능을 수행한다.
  • 데이터베이스에 접근하기 위한 로직 & 비즈니스 로직을 분리하기 위해 사용한다.

DTO(Data Transfer Object)

  • 계층 간 데이터 교환을 하기 위해 사용하는 객체
  • 어떠한 로직을 가지고 있지 않는 순수한 데이터 객체임 (getter, setter)

VO(Value Object)

  • 변경이 불가능하며 오직 읽기(Read-Only) 기능만 가짐
  • DTO와 비슷하지만 DTO는 setter 기능을 가지므로 값을 변경할 수 있다는 점이 다름

Entity

  • 데이터베이스 테이블 매핑용 객체로 핵심 클래스
  • 이를 기준으로 테이블이 생성되고 스키마가 변경된다.

사용자가 입력한 데이터를 데이터베이스에 저장하는 과정

  1. 사용자는 폼을 이용하여 데이터를 입력한다.
  2. 이 데이터는 DTO에 넣어서 전송된다.
  3. 해당 DTO를 받은 서버가 DAO를 이용하여 데이터베이스로 데이터를 저장한다.

Reference

https://melonicedlatte.com/2021/07/24/231500.html

https://youngjinmo.github.io/2021/04/dto-vo-entity/

profile
Backend Developer 💻 😺
post-custom-banner

0개의 댓글