인프런 커뮤니티 질문&답변

Jong Hee Park님의 프로필 이미지
Jong Hee Park

작성한 질문수

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

뷰 리졸버

강사님 질문이 있습니다.

작성

·

300

0

안녕하세요. 오랜만에 질문 올립니다.

 

스프링부트에서는 InternalResourceViewResolver를 

자동으로 등록해주잖아요.

그러면 여기서 궁금증이 생긴게

스프링에선 프로젝트를 만들면 servlet-context.xml에 자동으로 

 

<!-- Resolves views selected for rendering by @Controllers to .jsp resources in the /WEB-INF/views directory -->

<beans:bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">

<beans:property name="prefix" value="/WEB-INF/views/" />

<beans:property name="suffix" value=".jsp" />

</beans:bean>

 

이런 뷰리졸버 빈을 넣어주는데

그러면 스프링에선 이걸  꺼내 쓰는건가요?

부트에선 내장톰캣부분에

 

@ServletComponentScan  // 1. WAS에 해당 app을 서블릿으로 등록

@SpringBootApplication

public class Application {

 

public static void main(String[] args) {

SpringApplication.run(Application.class, args);

}

여기서 하는거 같은데 

@ServletComponentScan 이 어노테이션이 그건가요?

궁금해서 질문올립니다. 

 

답변 1

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. Jong Hee Park님

둘은 다른 기능입니다.

InternalResourceViewResolver는 뷰 리졸버를 처리하는 것이고, 스프링 부트는 이것을 자동으로 등록하고 사용합니다.

@ServletComponentScan는 Servlet을 자동으로 읽어들이는 애노테이션 입니다.

감사합니다.

Jong Hee Park님의 프로필 이미지
Jong Hee Park
질문자

아이고.. 죄송합니다 강사님. 횡설수설했습니다.

스프링에선 internalResourceViewResolver를 

servlet-context.xml에서 등록해주고

부트에선 application properties에서 등록해준다고 생각하면 되는거지요? 

스프링부트는 자동으로 등록한다는 말에 햇갈렸습니다. 

답변 감사합니다.

 

Jong Hee Park님의 프로필 이미지
Jong Hee Park

작성한 질문수

질문하기