IoC 컨테이너 (6) : ResourceLoader

de_sj_awa·2021년 6월 25일
0
post-custom-banner

11. ResourceLoader

리소스를 읽어오는 기능을 제공하는 인터페이스

ApplicationContext extends ResourceLoader

리소스 읽어오기

  • 파일 시스템에서 읽어오기
  • 클래스패스에서 읽어오기
  • URL로 읽어오기
  • 상대/절대 경로로 읽어오기

Resource getResource(java.lang.String location)

빌드를 하면 target class 밑에 리소스가 들어온다. classpath에 들어오게 되는 것이다.

@Component
public class AppRunner implements ApplicationRunner {
    /*
    @Autowired
    ApplicationContext resourceLoader;
	*/

    @Autowired
    ResourceLoader resourceLoader;
    
     @Override
    public void run(ApplicationArguments args) throws Exception {
        
        System.out.println(resourceLoader.getClass());
        Resource resource = resourceLoader.getResource("classpath:test.txt");
        System.out.println(resource.getClass());
        System.out.println(resource.exists()); System.out.println(Files.readString(Path.of(resource.getURI())));
    }
}

참고

  • 인프런 : 스프링 프레임워크 핵심 기술(백기선)
profile
이것저것 관심많은 개발자.
post-custom-banner

0개의 댓글