본문 바로가기

분류 전체보기290

Enable MVC Configuration Enable MVC Configuration는 Spring 프레임워크에서 Spring MVC의 기본 설정을 커스터마이징하거나 완전히 제어하고자 할 때 사용하는 방법입니다. 일반적으로는 @EnableWebMvc 애너테이션을 통해 활성화합니다.1. @EnableWebMvc 애너테이션@EnableWebMvc는 Spring에서 MVC 구성을 활성화하고 Spring MVC 기본 설정을 가져오는 데 사용됩니다.이 애너테이션은 Spring MVC 애플리케이션에서 커스텀 설정을 할 수 있도록 해주며, Spring의 기본 MVC 설정을 오버라이드할 수 있는 기회를 제공합니다.사용법@EnableWebMvc는 Spring Web MVC 구성 요소를 활성화하며, WebMvcConfigurer를 구현하여 MVC 관련 설정을 확.. 2024. 10. 16.
리졸버(Resolver) 리졸버(Resolver)는 해석하고 결정하는 역할을 하는 객체입니다. 스프링 프레임워크에서 리졸버는 특정 요청이나 작업을 처리할 때 그 과정에서 발생하는 불확정 요소를 해결하고, 필요한 데이터를 제공하는 역할을 합니다.1. 리졸버(Resolver)란?스프링에서 리졸버는 주어진 조건이나 상황에 맞게 값을 결정하거나 적절한 객체를 반환하는 역할을 합니다. 예를 들어, HandlerMethodArgumentResolver는 컨트롤러 메서드에 주입할 파라미터 값을 결정하는 리졸버이고, ViewResolver는 컨트롤러가 반환하는 뷰 이름에 맞는 실제 뷰 객체를 찾아주는 역할을 합니다.즉, 리졸버는 상황에 맞게 무언가를 '결정하고 반환하는 메커니즘'이라고 이해할 수 있습니다.2. 리졸버의 일반적인 역할해석: 입력.. 2024. 10. 16.
디스패처 서블릿 동작과정 - 인터셉터 활용해서 알아보기 디스패처 서블릿(DispatcherServlet)이 어떻게 동작하는지 알아보려면, 인터셉터(Interceptor)를 활용하여 요청이 디스패처 서블릿을 통해 처리되는 과정을 추적할 수 있습니다. HandlerInterceptor는 스프링에서 제공하는 인터페이스로, 특정 요청이 디스패처 서블릿에 도달하기 전과 후의 과정을 가로채서 로깅하거나, 요청 흐름을 수정하는 등의 작업을 수행할 수 있습니다.이를 통해 디스패처 서블릿이 실행되기 전후의 로직 흐름을 모니터링하고 확인할 수 있습니다.1. HandlerInterceptor 인터페이스HandlerInterceptor는 세 가지 메서드를 제공합니다:preHandle(): 컨트롤러가 호출되기 전에 실행됩니다. 디스패처 서블릿이 요청을 컨트롤러로 전달하기 전에 이 .. 2024. 10. 16.
2024.10.16(수) { CDN, MIME 타입, Accept 헤더, Vary 헤더, 아파치&톰캣 차이, addInterceptor } CDN(Content Delivery Network)CDN(Content Delivery Network)은 웹 개발에서 성능을 최적화하고 사용자 경험을 향상시키는 데 중요한 역할을 하는 기술입니다. 웹 개발자라면 CDN의 개념과 그 이점에 대해 이해하는 것이 좋습니다. 아래에서 CDN이 무엇인지, 웹 개발에서 CDN을 사용하는 이유, 장점, 그리고 CDN이 웹사이트 성능에 미치는 영향을 설명하겠습니다.1. CDN이란?CDN(콘텐츠 전송 네트워크)은 글로벌 네트워크에 분산된 서버들로 구성된 시스템으로, 사용자의 위치에 따라 가장 가까운 서버에서 콘텐츠를 제공하여 웹 페이지 로딩 속도를 최적화하는 기술입니다. CDN은 주로 이미지, CSS, JavaScript 파일, HTML, 동영상과 같은 정적 콘텐츠를 .. 2024. 10. 16.
콘텐츠 협상(Content Negotiation) 콘텐츠 협상(Content Negotiation)은 클라이언트와 서버 간의 통신에서 클라이언트가 수용할 수 있는 콘텐츠 형식을 결정하는 메커니즘입니다. HTTP 프로토콜에서 이 과정은 주로 HTTP 헤더를 통해 이루어지며, 서버는 클라이언트가 요청한 형식에 맞춰 응답을 보내게 됩니다.콘텐츠 협상의 기본 개념:클라이언트 요청: 클라이언트(브라우저 또는 API 소비자)는 서버에 요청할 때, 원하는 콘텐츠 형식을 명시할 수 있습니다. 이를 위해 HTTP 요청에 Accept 헤더를 포함시킵니다.서버 응답: 서버는 Accept 헤더를 확인하고, 클라이언트가 요청한 형식에 맞춰 응답을 생성합니다. 만약 클라이언트가 요청한 형식이 지원되지 않으면, 서버는 기본 형식으로 응답하거나 406 Not Acceptable 상.. 2024. 10. 15.
디폴트 서블릿(Default Servlet) 디폴트 서블릿(Default Servlet)은 웹 서버에서 정적 자원(예: 이미지, CSS 파일, JavaScript 파일 등)을 처리하는 데 사용되는 서블릿입니다. 일반적으로 정적 파일들은 서블릿이 아닌 서블릿 컨테이너(예: 톰캣)에서 직접 제공되며, 서블릿 요청은 애플리케이션의 비즈니스 로직에 해당하는 요청을 처리합니다. 디폴트 서블릿은 이러한 정적 자원 요청을 처리하기 위한 기본적인 역할을 합니다.서블릿과 디폴트 서블릿의 관계서블릿은 자바 웹 애플리케이션에서 동적인 요청을 처리하기 위해 사용되며, JSP나 컨트롤러와 같은 동적인 웹 페이지 생성에 주로 사용됩니다. 하지만 웹 애플리케이션에는 정적인 리소스(예: 이미지, HTML, CSS, JavaScript 파일 등)도 포함됩니다. 이 정적인 리소스.. 2024. 10. 15.