강의

멘토링

커뮤니티

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

이순곤님의 프로필 이미지
이순곤

작성한 질문수

스프링 프레임워크 핵심 기술

Resource 추상화

TT 감은 왔는데 정리가 잘 안되네요

해결된 질문

작성

·

278

2

강의 잘 들었습니다! 15분강의인데 50분 정도 생각을 정리해도 긴가민가 해서 질문드립니당

ApplicataionContext는 resourceLoader를 구현해서 getResource하면 resource타입 객체를 반환하는데 

여기서 Resoure인터페이스를 구현한 구현체 ClassPathResource , ServletContextResource , FileSystemResource중에서 이용해서 가져오는데 ApplicationContext는 일단 defalut로는 ServletContextResource 이용 해서 가져오는데 접두어 classpath나 File를 쓰면 강제로 가능하게 합니당

근데 ApplicationContext applicationContext = new ClassPathXmlApplicationContext("abc.xml");같은 경우에는 ClassPathXmlApplicationContext이게 ApplicationContext구현체인거는 알겠는데 classpath를 안적어도 되는이유가 내부적으로 "abc.xml"이 classpath:abc.xml(위치)로 변환되서 그런걸까요? 

답변 1

5

백기선님의 프로필 이미지
백기선
지식공유자

"defalut로는 ServletContextResource 이용 해서 가져오는데" 아니요. default로는 ApplicationContext의 구현체에 따라 달라지는데, 스프링 부트가 생성하는 applicationContext가 기본으로 서블릿 기반 WebApplicationContext라서 ServletContextResource 인거에요. 그 뒤는 맞구요.

이순곤님의 프로필 이미지
이순곤

작성한 질문수

질문하기