공식 문서에 @EnableWebMvc를 붙이지 말라고 나와 있다.이미 Spring MVC 자동설정이 @EnableWebMvc가 설정하는 것을 수행하고 있기에 둘을 같이 사용하지 않아도 된다고 한다. @EnableWebMVC를 사용하는 경우자동설정을 사용하지 않고 Spring MVC에 대한 완전한 제어를 원할 때 @Configuration과 함께 @EnableWebMVC를 사용하면 된다고 한다.동일한 방법으로 @Configuration과 DelegatingWebMvcConfiguration을 사용하는 방법이 있다고 한다. WebMvcAutoConfiguration에서 @EnableWebMvc와 동일한 역할을 하는 Configuration이 존재한다.@Retention(RetentionPolicy.RUNTI..
스프링
Filter는 Spring이 아닌 J2EE 표준 스펙으로 Dispatcher Servlet에 요청이 전달되기 전/후에 url 패턴에 맞는 요청에 대해 부가작업을 처리할 수 있는 기능을 제공한다고 합니다. @Componentclass LoggingFilter(private val mapper: ObjectMapper) : Filter { override fun doFilter( request: ServletRequest?, response: ServletResponse?, chain: FilterChain?, ) { ... }}하지만 저는 Filter 클래스를 주로 위와 같이 빈으로 등록하여 사용하고 있었기에 Spring에서 Filter를 관리하..
이번 글에서는 SpringBoot에서 DispatcherServlet을 활용하여 HTTP 요청을 처리하는 과정을 살펴보려 합니다.* 해당 과정은 spring boot 2.7.5를 기준으로 작성하였습니다. 그전에 간단히 DispatcherServlet이 HTTP 요청을 처리하는 과정을 살펴보면 위의 사진과 같습니다.DispatcherServlet에서 요청을 받습니다.HandlerMapping에서 적합한 Handler를 찾습니다.적합한 Handler를 반환합니다.HandlerAdapter에게 Handler를 전달하고 실행합니다.Handler를 실행합니다.Handler 실행 결과를 반환합니다.HandlerAdapter의 실행 결과를 반환합니다.요청 처리 결과를 반환합니다.그럼 요청을 처리하는 Dispatche..