Spring Framework/Web on Servlet Stack(51)
-
Spring Web MVC
Section SummaryDispatcherServletFiltersAnnotated ControllersFunctional EndpointsURI LinksAsynchronous RequestsCORSError ResponsesWeb SecurityHTTP CachingView TechnologiesMVC ConfigHTTP/2 HTTP/2 :: Spring FrameworkServlet 4 containers are required to support HTTP/2, and Spring Framework 5 is compatible with Servlet API 4. From a programming model perspective, there is nothing specific that applic..
2024.10.15 -
Advanced Java Config
Advanced Java Configuration in Spring MVCSpring MVC의 설정은 기본 모드와 고급 모드로 나뉠 수 있으며, 각각 다른 방식으로 MVC 설정을 구성할 수 있습니다. Spring MVC에서는 @EnableWebMvc를 사용하여 기본 설정을 활성화하고, WebMvcConfigurer를 통해 세부 설정을 추가하거나 커스터마이징할 수 있습니다. 하지만 더 고급 모드로 전환할 경우, @EnableWebMvc를 제거하고 DelegatingWebMvcConfiguration을 확장하여 직접 MVC 설정을 세밀하게 제어할 수 있습니다.기본 모드와 고급 모드의 차이점기본 모드:@EnableWebMvc를 사용하여 Spring MVC의 디폴트 구성을 자동으로 적용합니다.WebMvcConf..
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
Default Servlet in Spring MVCSpring MVC에서 Default Servlet은 정적 리소스(이미지, CSS, JavaScript 파일 등)를 처리하는 서블릿입니다. 일반적으로 서블릿 컨테이너(예: Tomcat, Jetty, WebLogic 등)가 / 경로로 요청된 정적 리소스를 처리하는 역할을 담당합니다. Spring MVC는 이러한 기본 서블릿을 그대로 사용하면서, DispatcherServlet이 애플리케이션의 모든 요청을 처리하도록 설정할 수 있습니다.문제: DispatcherServlet과 정적 리소스 처리Spring MVC에서 DispatcherServlet을 / 경로에 매핑하면, 이는 서블릿 컨테이너의 디폴트 서블릿이 처리해야 하는 정적 리소스 요청을 덮어쓸 수 있습..
2024.10.15 -
View Resolvers
Spring MVC의 View ResolversView Resolvers는 Spring MVC에서 클라이언트 요청에 대한 응답을 렌더링할 뷰(HTML, JSON, JSP 등)를 결정하는 역할을 합니다. Spring MVC는 다양한 뷰 기술을 지원하며, 이를 위해 ViewResolver를 사용하여 요청이 어떤 뷰로 렌더링될지를 결정합니다.ViewResolver는 컨트롤러가 반환하는 뷰 이름을 실제 뷰로 매핑합니다. 예를 들어, 컨트롤러에서 "home"이라는 뷰 이름을 반환하면, 뷰 리졸버는 해당 이름을 실제 뷰 파일(예: home.jsp 또는 home.html)과 연결합니다.View Resolvers 구성Spring MVC는 뷰 리졸버 구성을 쉽게 구성할 수 있습니다. 아래 Java 설정 예시에서는 JSP..
2024.10.15 -
View Controllers
Spring MVC의 View ControllersView Controllers는 Spring MVC에서 ParameterizableViewController를 설정하는 단축 기능입니다. 이 컨트롤러는 클라이언트의 요청을 특정 뷰로 즉시 전달(forward)하는 역할을 합니다. 주로 정적인 페이지를 제공할 때 사용되며, Java 컨트롤러의 로직 없이 뷰만 응답할 수 있는 상황에서 유용합니다.View Controller란?View Controller는 HTTP 요청을 처리하는 Java 코드가 필요 없고, 단순히 특정 URL에 대한 요청을 특정 JSP, HTML, 또는 템플릿 뷰로 연결할 때 사용됩니다. 이 방법을 사용하면 Java 컨트롤러 클래스나 메서드를 작성하지 않고도 Spring이 해당 URL을 처리..
2024.10.15