본문으로 건너뛰기
3계층 구조와 트랜잭션
5주차
요청 처리 흐름

3계층 구조와 트랜잭션

왜 물은 위에서 아래로 흐르듯 Controller, Service, Repository를 나눌까?

역할 분리와 트랜잭션 경계를 함께 다루며 서비스 로직이 어디에 있어야 하는지 명확히 정리합니다.

SIGNATURE VISUAL

흐름으로 이해하면 설명이 쉬워집니다

각 단계를 눌러서 지금 챕터가 실제 구현, 면접 답변, 코드 리뷰에서 어떤 판단 기준으로 연결되는지 확인하세요.

요청 진입

클라이언트 요청이 어떤 URL과 DTO로 들어오는지 이해합니다.

Controller

HTTP 관심사와 비즈니스 관심사를 분리합니다.

Service

트랜잭션 경계와 핵심 로직 책임을 모읍니다.

Repository

DB 조회를 추상화하되 SQL 감각은 잃지 않습니다.

1
2
3
4

현재 포인트

요청 진입

클라이언트 요청이 어떤 URL과 DTO로 들어오는지 이해합니다.

실전 연결

요청 진입 단계는 구현뿐 아니라 리뷰와 면접에서 선택 이유를 말할 때 다시 등장합니다.

흐름을 외우는 게 아니라 판단 기준을 연결하는 장치입니다.

LEARNING GOALS

여기까지는 꼭 설명할 수 있어야 합니다

  • Controller, Service, Repository의 책임을 분리할 수 있다.
  • @Transactional이 데이터 정합성을 어떻게 보호하는지 설명한다.
  • AOP 프록시가 트랜잭션을 적용하는 흐름을 이해한다.

CONCEPT CHECK

헷갈리는 개념은 나란히 봐야 정리됩니다

이 챕터는 개념을 따로 외우기보다 흐름 속에서 비교해야 이해가 빨라집니다. 시그니처 비주얼에서 각 단계의 역할 차이를 먼저 확인하세요.

PITFALLS

자주 틀리는 지점

  • 서비스 없이 컨트롤러에 로직 몰아넣기
  • 트랜잭션 범위를 너무 넓게 잡기
  • self-invocation 문제 무시

PAID DEPTH

공개 범위와 더 깊게 들어가는 범위

이 페이지는 큰 그림과 판단 기준까지 공개합니다. 실무형 예제, 더 깊은 반례, 프로젝트 문맥은 연결 강의에서 다룹니다.

  • 실전 코드와 반례를 왜 그 구조로 설계했는지
  • 프로젝트에서 자주 부딪히는 예외 케이스와 디버깅 포인트
  • 면접에서 꼬리질문이 들어왔을 때 답을 확장하는 방식

COURSE LINK

이 챕터를 더 깊게 보는 강의

개념을 이해한 다음에는 실제 코드, 반례, 면접 설명까지 한 번에 이어서 보는 편이 빠릅니다.

[Lv1] 면접에서 "설명할 수 있는" Spring Boot
Lv1
유료

[Lv1] 면접에서 "설명할 수 있는" Spring Boot

Spring 핵심 원리, 면접 대비

Lv1 · 9시간 58분 · 2026년 1월₩75,000₩88,000
쿠폰 받고 수강하기 카카오 쿠폰 페이지를 먼저 열고 인프런으로 이어집니다.
    Spring Boot 큰 그림 5주차: 3계층 구조와 트랜잭션 | 딩코딩코