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 응답 생성 및 클라이언트에게 반환
'멋쟁이사자처럼 13기 > 정기 세션' 카테고리의 다른 글
| [멋사/Mac OS] 4주차 정기 세션 (Part 1. JPA) (0) | 2025.06.17 |
|---|---|
| [멋사/Mac OS] 3주차 정기 세션 (Part 3. 데이터베이스 기초 및 설계) (0) | 2025.06.09 |
| [멋사/Mac OS] 3주차 정기 세션 (Part 1. SpringBoot란?) (0) | 2025.06.09 |
| [멋사/윈도우] 2주차 정기 세션 준비 (0) | 2025.03.20 |
| [멋사/Mac OS] OT & 1주차 정기 세션 (0) | 2025.03.19 |