Entity(Domain)
- 데이터베이스에 쓰일 컬럼과 여러 엔티티 간의 연관관계를 정의
- 데이터베이스의 테이블을 하나의 엔티티로 생각해도 무방함
- 실제 데이터베이스의 테이블과 1:1로 매핑(하나의 값을 다른 값으로 대응)
- 이 클래스의 필드는 각 테이블 내부의 컬럼(열)을 의미
DAO
- 데이터베이스에 접근하는 객체
- Service가 DB에 연결할 수 있게 해주는 역할
- DB를 사용하여 데이터를 조회하거나 조작하는 기능을 전담
DTO vs VO
DTO
- 데이터 전달용
- 데이터를 담아서 전달하는 바구니
- getter/setter 외에 다른 로직 x
VO
- 값 표현용
- 값 그 자체를 표현하는 객체
- getter/setter 외의 로직을 가질 수 있다.
- ex) 돈 → 만원권 마다 고유번호가 달라도 모두 만원이다.
MVC 패턴 사용법
- Model은 Controller와 View에 의존하지 않아야 한다. (Model 내부에 Controller와 View에 관련된 코드가 있으면 안된다.)
- View는 Model에만 의존해야 하고, Controller에는 의존하면 안된다. (View 내부에 Model의 모드만 있을 수 있고, Controller의 코드가 있으면 안된다.)
- View가 Model로부터 데이터를 받을 때는, 사용자마다 다르게 보여주어야 하는 데이터에 대해서만 받아야 한다. (View는 공통부분, Model은 개개인)
- Controller는 Model과 View에 의존해도 된다. (Controller 내부에는 Model과 View의 코드가 있을 수 있다.)
- View가 Model로부터 데이터를 받을 때는, 반드시 Controller에서 받아야 한다.
'그룹스터디' 카테고리의 다른 글
JPA Auditing (0) | 2022.12.30 |
---|---|
일급 컬렉션(First Class Collection) (0) | 2022.12.23 |
XML Configuration vs Java Configuration (0) | 2022.12.14 |
인터페이스, 추상클래스, 다형성 (0) | 2022.11.25 |
디자인 패턴 - Singletone (0) | 2022.11.18 |