뷰 리졸버 (InternalResourceViewResolve)

이건우·2025년 3월 3일

웹 프로그래밍

목록 보기
13/43

뷰 리졸버의 역할

컨트롤러가 반환한 논리적 뷰 이름(View Name)을
실제 뷰(JSP, Thymeleaf 등)로 변환해 줍니다.



뷰 리졸버 동작 원리

  1. 컨트롤러에서 뷰 이름 String값으로 반환.

  2. ViewResolver가 설정된 접두사(prefix)와 접미사(suffix)를 붙여서 실제 뷰 경로 생성

  3. JSP(View) 렌더링 후 클라이언트에게 HTML 응답 전송


ViewResolver 설정

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/views/"/>
    <property name="suffix" value=".jsp"/>
</bean>
  • 뷰 파일의 기본 위치를 /WEB-INF/views/로 설정
  • 파일 확장자를 .jsp로 설정
  • 컨트롤러에서 return "home";을 하면 "/WEB-INF/views/home.jsp"로 변환됨

ViewResolver 종류

ViewResolver 종류설명
InternalResourceViewResolverJSP 같은 정적인 뷰를 처리 (주로 사용)
ThymeleafViewResolverThymeleaf 템플릿 엔진을 사용
BeanNameViewResolver뷰 이름이 Bean의 이름과 같을 때 사용
MappingJackson2JsonViewJSON 데이터를 반환하는 ViewResolver

정리

ViewResolver는 컨트롤러에서 반환한 뷰 이름을 실제 뷰 파일 경로로 변환

JSP를 사용할 때 InternalResourceViewResolver를 사용하면 "home"을 /WEB-INF/views/home.jsp로 변환

뷰 경로를 직접 지정하는 것보다 유지보수성이 훨씬 좋아짐

profile
새싹개발자

0개의 댓글