멋쟁이사자처럼 13기/정기 세션

[멋사/Mac OS] 3주차 정기 세션 (Part 2. MVC 패턴)

개발자 지망생 리네 2025. 6. 9. 18:25

1. MVC 패턴

- 스프링 부트에서 사용하는 디자인 패턴

Model View Controller
웹 브라우저 상에서 보여주고 싶은 데이터를 저장하는 공간. 데이터베이스에서 정보를 가져옴 웹 브라우저에서 보여지는 화면 사용자 요청을 처리하고 요청에 대한 처리 로직 담당
controller domain repository service dto
- 클라이언트로부터 요청을 받고, 해당 요청에 대한 처리를 수행
- HTTP 요청 처리
- GET, POST, PUT, DELETE 등의 메소드를 가짐
- 애플리케이션의 도메인 모델 - 데이터베이스와 상호작용 (데이터를 읽고 쓰는 작업)
- CURD
- Spring Data JPA 제공
- 비즈니스 로직 수행 담당
- 트랜잭션 관리
- 예외 처림
- repository로부터 데이터를 가져와 처리
- 데이터 전달
- 계층 간 데이터를 주고받을 때 사용하는 DTO 클래스들을 모아둔 공간

 

2. 전체 로직

- 클라이언트의 요청

- Dispatcher가 요청 처리: Dispatcher Servlet가 요청을 처리할 적절한 컨트롤러에게 전달

- Controller가 요청 처리

- Service에 데이터 전달

- JPA Repository를 통한 DB 조회

- Service에서 로직 처리: 반환된 user 엔티티를 가공하여 로그인 여부 확인 후 그에 따른 응답 생성

- Controller 응답 생성 및 클라이언트에게 반환