• 티스토리 홈
starryeye
  • 프로필사진
    starryeye
    • 분류 전체보기 (189)
      • C++ (17)
      • Java (24)
      • OOP (5)
      • Spring Reactive Stack (12)
        • Reactive Streams (3)
        • Netty (4)
        • Reactor (1)
        • Webflux (3)
        • DB, Cache 연동 (1)
      • Spring (90)
        • Core (17)
        • MVC (33)
        • Client (2)
        • Security (4)
        • DB, Cache 연동 (33)
      • DataBase (12)
        • RDBMS (2)
        • NoSQL (10)
      • Message Broker (6)
      • Web (4)
      • Network (4)
      • 대규모 시스템 설계 (15)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
      등록된 댓글이 없습니다.
    • 최근 공지
        등록된 공지가 없습니다.
      # Home
      # 공지사항
      #
      # 태그
      # 검색결과
      # 방명록
      • WebHandler 와 Spring
        2024년 03월 10일
        • starryeye
        • 작성자
        • 2024.03.10.:59
        반응형

        Spring 이 WebHandler 의 구현체인 DispatcherHandler(front handler) 를

        등록하는 과정을 알아보자.

         

         

        spring boot autoconfigure 에서

        자동 구성(Auto Configuration) 기능에 의해 동작하는 HttpHandlerAutoConfiguration 이다.

        자동 구성 조건에 따라 HttpHandler 를 빈으로 등록하고 있는 것을 알 수 있다.

         

        HttpHandlerAutoConfiguration 에서 HttpHandler 를 생성할 때 호출하는

        WebHttpHandlerBuilder::applicationContext 메서드 코드의 일부이다.

        Spring container 에서

        WEB_HANDLER_BEAN_NAME("webHandler") 의 이름을 가지는 Bean 을 찾아서

        builder 에 넣어준다.

        또한, WebFilter, WebExceptionHandler 등도 실행 우선순위에 맞춰서 넣어주고 있는 것을 볼 수 있다.

         

        따라서..

        사용자는 WebHandler, WebFilter, WebExceptionHandler 등을 필요에 따라 Bean 으로 등록해주면,

        자동으로 spring 이 등록된 빈들을 사용하여 서버까지 실행할 것임을 예상해 볼 수 있다.

         

        참고.

        사용자가 WebHandler 를 등록하려하면.. 

        이미 등록되었다고 런타임 에러가 발생한다.

        WebFluxConfigurationSupport 에서

        WebHandler 의 구현체인 DispatcherHandler 를 Bean 으로 등록하고 있다.

         

        결론

        Spring 은 front handler 의 역할을 하는 DispatcherHandler 를 이미 등록하고 있기 때문에

        사용자는 WebHandler 를 직접 등록할 필요가 없다.

        필요에 따라, WebFilter, WebExceptionHandler 등은 등록해볼 수 있다.

         

        반응형

        'Spring Reactive Stack > Webflux' 카테고리의 다른 글

        HttpHandler 생성과 동작  (0) 2024.03.15
        WebHandler 와 Netty 의 관계  (0) 2024.03.09
        다음글
        다음 글이 없습니다.
        이전글
        이전 글이 없습니다.
        댓글
      조회된 결과가 없습니다.
      스킨 업데이트 안내
      현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
      ("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
      목차
      표시할 목차가 없습니다.
        • 안녕하세요
        • 감사해요
        • 잘있어요

        티스토리툴바