Spring Framework/Web on Servlet Stack(65)
-
Context Hierarchy
DispatcherServlet은 자체적인 설정을 위해 WebApplicationContext(ApplicationContext의 확장 버전)를 필요로 합니다.WebApplicationContext는 ServletContext 및 이를 사용하는 Servlet과 연결됩니다. 또한 ServletContext에 바인딩되므로, 애플리케이션에서 RequestContextUtils의 정적 메서드를 사용하여 WebApplicationContext를 찾을 수 있습니다.컨텍스트 계층 구조의 개념대부분의 애플리케이션에서는 단일 WebApplicationContext를 사용하는 것이 간단하며 충분합니다.그러나 더 복잡한 애플리케이션에서는 컨텍스트 계층 구조(Context Hierarchy)를 구성할 수도 있습니다. ➡ 컨텍..
2025.02.27 -
Dispatcher Servlet
1. DispatcherServlet이란?Spring MVC에서 DispatcherServlet은 웹 애플리케이션의 센트럴 컨트롤러 역할을 하는 프론트 컨트롤러(Front Controller)입니다.📌 프론트 컨트롤러 패턴이란?모든 HTTP 요청을 한 곳에서 받아들이고, 이를 적절한 처리기로 위임하는 패턴입니다.Spring MVC에서는 DispatcherServlet이 이러한 역할을 수행합니다.요청을 받고, 어떤 컨트롤러가 이를 처리할지 결정한 후, 결과를 적절한 뷰(View)로 전달합니다.2. DispatcherServlet의 핵심 기능DispatcherServlet은 요청을 처리하는 전체적인 공통 알고리즘(Shared Algorithm)을 제공하며, 나머지 작업은 설정된 위임(delegate) 컴포..
2025.02.27 -
Spring Web MVC
Section SummaryDispatcherServletFiltersAnnotated ControllersFunctional EndpointsURI LinksAsynchronous RequestsCORSError ResponsesWeb SecurityHTTP CachingView TechnologiesMVC ConfigHTTP/2 출처 : https://docs.spring.io/spring-framework/reference/web/webmvc.html Spring Web MVC :: Spring FrameworkSpring Web MVC is the original web framework built on the Servlet API and has been included in the Spring ..
2024.10.15 -
Advanced Java Config
Advanced Java Configuration in Spring MVCSpring MVC의 설정은 디폴트 모드와 고급 모드로 나뉠 수 있으며, 각각 다른 방식으로 MVC 설정을 구성할 수 있습니다. Spring MVC에서는 @EnableWebMvc를 사용하여 디폴트 설정을 활성화하고, WebMvcConfigurer를 통해 세부 설정을 추가하거나 커스터마이징할 수 있습니다. 하지만 더 고급 모드로 전환할 경우, @EnableWebMvc를 제거하고 DelegatingWebMvcConfiguration을 확장하여 직접 MVC 설정을 세밀하게 제어할 수 있습니다.디폴트 모드와 고급 모드의 차이점디폴트 모드:@EnableWebMvc를 사용하여 Spring MVC의 디폴트 구성을 자동으로 적용합니다.WebMvc..
2024.10.15 -
Path Matching
Path Matching in Spring MVCPath Matching은 Spring MVC에서 클라이언트 요청의 URL path를 기반으로 적절한 컨트롤러와 매핑하는 과정입니다. Spring MVC는 URL 경로와 컨트롤러를 매핑하여 클라이언트 요청을 처리하는데, 이 과정에서 path matching에 다양한 옵션을 제공할 수 있습니다. 이러한 매칭 동작을 세부적으로 제어하기 위해 Spring MVC에서는 PathMatchConfigurer를 사용하여 매칭 방식을 커스터마이징할 수 있습니다.PathMatchConfigurer란?PathMatchConfigurer는 URL 경로와 컨트롤러 핸들러를 매핑할 때 경로를 처리하는 방법을 설정하는 데 사용되는 클래스입니다. 이를 통해 경로 매칭의 동작 방식을 ..
2024.10.15 -
Default Servlet
🌐 Spring MVC에서 Default Servlet 개념 정리Spring MVC에서 Default Servlet 은 정적 리소스(이미지, CSS, JavaScript 파일 등) 를 처리하는 서블릿입니다. 일반적으로 서블릿 컨테이너(예: Tomcat, Jetty, WebLogic 등) 가 / 경로로 요청된 정적 리소스를 처리하는 역할을 담당합니다.Spring MVC는 DispatcherServlet이 모든 요청을 처리하도록 설정 할 수 있지만, 이 경우 정적 리소스 요청이 정상적으로 처리되지 않을 가능성 이 있습니다. 이를 해결하기 위해 DefaultServletHttpRequestHandler 를 활용할 수 있습니다.⚡ DispatcherServlet과 정적 리소스 처리 문제📌 문제 상황Dispa..
2024.10.15