[Spring] 스프링 ResourceLoader로 리소스(Resource) 가져오기
| 스프링 ResourceLoader
ResourceLoader는 리소스를 읽어오는 기능을 제공하는 인터페이스다. ApplicationContext 인터페이스는 이 ResourceLoader 인터페이스를 상속받은 상태이므로 ApplicationContext를 통해서도 ResourceLoader가 제공하는 메서드를 사용하는 것이 가능하다.
@Component
public class AppRunner implements ApplicationRunner {
@Autowired
ResourceLoader resourceLoader;
@Override
public void run(ApplicationArguments args) throws Exception {
Resource resource = resourceLoader.getResource("classpath:test.txt");
System.out.println(resource.exists());
System.out.println(resource.getDescription());
System.out.println(resource.getURI().getPath());
}
}
위 코드는 test.txt 를 가져오는 getResource를 통해 Reousrce 객체를 반환는다. 이 객체를 통해 resource에 대한 여러 정보를 얻을 수 있다.
true
class path resource [test.txt]
/C:/Users/user/spring/spring-tutorial/target/classes/test.txt