DAO DTO는 앞서 정리된 MVC 패턴에서 Model에 대한 작업이다.
DTO를 통하여 상태의 값을 주고 받으며, 영속 저장된 데이터와의 통신을 위해 DAO를 사용한다.
DTO
- DTO는 Data Transfer Object의 약자.
- 계층간 데이터 교환을 위한 자바빈즈.
- 여기서 계층이란 컨트롤러의 뷰, 비지니스 계층, 퍼시스턴트 계층을 의미.
- 일반적으로 DTO는 로직을 가지고 있지 않고, 순사한 객체.
- 필드와 getter, setter를 가진다. 추가적으로 toString(), equals(), hashCode()등의 Object메소드를 오버라이딩 할 수 있다.
- 데이터 테이블에 직접적으로 영향이가는 클래스를 사용할 경우, 다른 사람이 코드를 변경하다 실수 했을 때 데이터베이스에 발생할 수 있는 오류를 예방하기 위해서 DTO는 DB에 연결된 클래스는 그대로 두고 정보를 전송하는 클래스를 따로 만들어 주는것이라고 할 수 있다.
- 데이터를 다른 logic에게 전송 및 반환할 때 효율 적으로 데이터를 사용 할 수 있게 클래스를 작성하는것이 DTO이다. DTO클래스를 사용하면 데이터의 전송 및 얻어서 사용할 때 효율적으로 사용할수 있다.
DAO
- DAO는 Data Access Object의 약자.
- 데이터를 조회하거나 조작하는 기능을 전담하도록 만든 객체.
- 보통 데이터베이스를 조작하는 기능을 전담하는 목적으로 생성.
- 모듈화한 클래스들중 데이터베이스에 접근하는 코드만 관리하는 클래스가 DAO클래스.
- DAO클래스는 일반적으로 테이블 당 한 개씩 생성해서 사용. 특정테이블에서 수행할 작업을 메소드로 정의해서 구현.
참고 및 출처 : https://www.boostcourse.org/web316/lecture/254337 (부스트코드)
'개념 정리' 카테고리의 다른 글
절차지향 프로그래밍, 객체지향 프로그래밍, 관점지향 프로그래밍은 각각의 차이 조사하기 (0) | 2022.03.28 |
---|---|
Spring Framework의 특징과 장점 (0) | 2022.03.28 |
MVC 패턴에 대해 알아보자 (0) | 2022.03.23 |
팀별과제 노트 (0) | 2022.03.19 |
자, CODE Chapter6 전신과 릴레이입니다. (2) | 2022.03.18 |