goal
DAO, DTO, 스프링 웹 계층에 대해서 이해한다.
DTO
- 각 계층간의 데이터를 교환하기 위한 Java Object
- 데이터를 레이어 간에 전달하는 목적을 가지며 객체의 속성과, getter, setter만 가지고 있다.
DAO(Data Access Object)
- DB에 접근하는 객체
- 즉, DB에 접근하여 DB의 데이터에 접근한다. (DB의 데이터에 접근하는 객체)
1 ] Spring Web Layer (스프링 웹 레이어)
계 층 | 설 명 |
Web Layer (Presentation Layer) |
- 브라우저상의 웹 클라이언트의 요청 및 응답을 처리한다. - Service Layer, Repository Layer의 Exception을 처리한다. @Controller 어노테이션을 사용하여 작성된 Controller 클래스가 이 계층에 속하게 된다. |
Service Layer (Business Layer) |
- 비즈니스 로직(개발자 코드) 처리와 비즈니스와 관련된 도메인 모델의 적합성 검증 - 트랜잭션 관리 - Web Layer와 Data Access Layer가 서로 통신하지 않도록 한다. (연결역할) - Service 인터페이스와 @Service 어노테이션을 사용하여 작성된 Service 구현 클래스가 이 계층에 속한다. |
Repository Layer (Data Access Layer) |
- ORM(Mybatis, Hibernate를 주로 사용하는 계층) - DAO 인터페이스와 @Repository 어노테이션을 사용하여 작성된 DAO 구현 클래스가 이 계층에 속한다. - Database에 data를 CRUD하는 계층 |
Domain Model Layer | - DB의 테이블과 매칭될 클래스 - Entity클래스라고 불린다. (어노테이션 존재하는걸로 알고 있음) |
'Spring > Spring 이론' 카테고리의 다른 글
spring 이론 :) Jar(java Archive)와 War(Web Application Archive) (0) | 2022.05.03 |
---|---|
Spring + java 이론 :) SOLID원칙, 객체지향 설계 5원칙 **백번천번만번십만번 보기** (2) | 2022.05.02 |
Spring 이론 :) Spring Container, Spring 핵심 프로그래밍 모델 3가지, Spring API가 제공하는 것과 특징 (0) | 2022.04.25 |
Spring + java 이론 :) 의존성 주입의 의미와 개선 코드 (0) | 2022.04.04 |
Spring 이론 :) Spring Data JPA를 시작하기 전에 간단한 데이터베이스 개념 - 데이터의 무결성 (0) | 2022.03.22 |