inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링부트 개념정리(이론)

스프링부트 개념정리 14강 - 스프링부트가 응답(Response)하는 방법이 궁금해요!

클라이언트 요청 시 디스패쳐 서블릿 동작에 관해

378

권혁빈

작성한 질문수 1

0

안녕하세요! 먼저 좋은 강의 해주셔서 감사합니다.

다름이 아니라, 강의 마지막 부분의 Spring 동작을 간단하게 설명해주셨는데요.

이 때, 클라이언트로부터 요청이 들어오면 디스패쳐 서블릿이 웹과 관련된 Controller들을 메모리에 올린다고 하셨는데, 스프링부트의 @Controller 어노테이션은 컴포넌트 스캔의 대상이고, 스프링부트 어플리케이션이 로드될 때 Application Context에 등록되는 것으로 알고 있습니다.

본 강의에서 말씀해주신 내용과 제가 학습했던 내용에 차이가 있어 질문 드립니다.

 

  1. @Controller 어노테이션을 사용하는 스프링부트의 Controller는 컴포넌트 스캔을 통해 Service, Repository 등과 다른 시점에서 로드되는지

  2. 말씀해주신 메모리에 올린다는 표현이 Application Context로부터 빈을 주입받는 것을 의미하는건지

학습한 지 얼마 안되서 개념에 혼동이 오네요 ㅠ.ㅠ

다시 한번 좋은 강의 감사드립니다!

spring spring-boot

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

권혁빈님, 질문 주신 내용 잘 읽었습니다.

  1. 스프링부트에서 @Controller 어노테이션을 사용하는 컨트롤러는, 애플리케이션이 로드될 때 컴포넌트 스캔에 의해 발견되고 Application Context에 빈으로 등록됩니다. Service, Repository와 같은 다른 컴포넌트들도 같은 방식으로 컴포넌트 스캔을 통해 빈으로 등록되므로, 별도의 시점에서 로드되는 것은 아닙니다.

  2. 메모리에 올린다는 표현은 실제로 스프링 컨테이너 내에 해당 컨트롤러의 인스턴스가 빈으로 생성되어 관리되는 것을 의미합니다. 이 과정에서 빈이 Application Context에 등록된 후, 필요에 따라 다른 컴포넌트들과 의존 관계가 주입됩니다.

이해를 돕기 위해 추가적인 정보를 제공하자면, 스프링부트의 내장 서블릿 컨테이너는 @WebServlet, @WebFilter, @WebListener 어노테이션에 의해 자동으로 클래스를 등록할 수 있으며, 이를 위해 @ServletComponentScan을 사용할 수 있습니다. 다만 이는 스탠드얼론 서블릿 컨테이너에서는 적용되지 않고, 내장 서블릿 컨테이너에서 사용됩니다. 관련된 문서를 참고하시면 더 도움이 될 것입니다.

Spring Boot Reference Documentation v3.1.5 - Add Servlets, Filters, and Listeners by Using Classpath Scanning

강의를 통해 깊이 있는 학습을 하시고 계신 것 같아 보기 좋습니다. 혼동되는 개념이 있을 때는 언제든 질문해주시고, 앞으로도 계속해서 활발한 학습을 진행하시길 바랍니다. 좋은하루 되세요!

build 시 에러 해결방법 공유(docker.desktop 업데이트 -> 의존성 버전 수정)

0

5

1

Inner class로 Config를 지정하는 이유

0

14

1

네이버 API | '검색 - 책' API 제공 중단

0

30

2

ArticleReadService 관련 질문

0

23

1

kafka 이벤트 발행 실패 시 at-least-once를 보장하는 방법이 궁금합니다.

1

56

1

domain에 @Entity 와 Repository를 함께 둔 이유가 궁금합니다

1

41

1

Part 2 듣기전 복습하던 중, 아키텍처에 관한 질문이 있습니다.

0

41

2

장치 의존성과 CSR

0

32

1

테스트는 인터페이스를 대상으로 만드는것에 대해 궁금한 점이 있습니다.

0

25

1

아무도 모르게 책 내시면 모르실 줄 알고!!

1

46

2

[영한님]Spring Boot 및 프로젝트 생성

0

51

2

Jib 이미지 빌드에서 docker credential 관련으로 이슈가 있다면

1

63

2

스크립트에 대해 질문 있습니다.

1

58

1

같은 사용자가 연속된 중복 호출할 경우 어떻게 되는지 궁금합니다!

2

70

1

조건 검색 질문

0

39

1

JPA 엔티티로 만들었다고 기술종속이 아닌지에 대한 질문

0

54

3

강의 요청 문의

0

39

2

클로드코드 명령어-대화&세션관리 수업 자료

0

40

1

웹서버의 역활에 대해 질문이 있습니다.

0

421

1

JPA가 저장되는 위치는 어디인가요?

0

1068

2

참고자료

0

1097

1

요즘 많은 분들이 이것이라 하지 않고 이 아이라 하는데

-20

1320

1

좋은 강의감사합니다.

0

526

1

강의 정리 포스팅 관련 문의

0

916

1