개발기록

[Springboot] DispatcherServlet은 뭔가요? 본문

Spring

[Springboot] DispatcherServlet은 뭔가요?

Danuvibe 2021. 6. 1. 16:25

회사의 개발 업무시 Spring MVC를 사용한다.

'서버로 들어올때 url에 따라 분기를 해준다. 분기를 해준다는 것은 ? 적절한 @Controller를 찾아 매핑해준다'

그런 역할을 해주는 것은 DispatcherServlet이다! 이런 정도로만 알고 있어,, 이번 포스팅을 통해 조금 더 자세하게 알아보자!

 

스프링 공식문서의 DispatcherServlet을 해석하면 !

"Client의 Request를 실제로 processing하는 method를 호출해주는 Front Controller의 역할을 수행하는 instance가 필요하다.

Spring에서는 DispatcherServlet이 그 역할을 한다". 라고 이해할 수 있습니다.


# DispatcherServlet 구조

위의 DispatcherServlet 은 Root를 Servlet이 상속받고 있다는 것을 확인할 수 있다.

Root WebApplicationContext에는 모든 Servlet에서 공용으로 사용하는 Services, Repositories를 Bean으로 등록한다.

Servlet WebApplicationContext는 Controller, HandlerMapping 등도 Bean으로 등록해주니까!

상속관계에 있기때문에 Servlet WebApplicationContext를 사용하면 모두 Bean으로 등록해주는것을 알수 있습니다!

 

Comments