특정 xml파일이나 txt파일 등과 같은 리소스 파일들을 class부분에서 읽어와야 하는 일이 존재
하였다.
기존에는 D:\abc\ddd.txt 형식처럼 외부에 파일을 위치시키고 properties 파일에 경로를 지정한후 파일을 읽어왔는데 너무 번거롭다.
그래서 해결책을 찾아본 결과 spring에서는
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
위 클래스를 이용하여 classpath안에 존재하는 파일의 정보를 가지고 올 수 있었다.
실행방법은 이렇다. 다음과 같은 임의의 파일을 calsspath 영역내에 위치 시키자.
본인은 test.txt라는 파일을 classpath에 위치시킴
그리고 다음과 같이 샘플구현을 하여 파일정보일부를 확인해 보았음
Resource resource = new ClassPathResource("test.txt");
System.out.println("파일사이즈::"+resource.getFile().length());
System.out.println("파일절대경로+파일명:"+resource.getURI().getPath().substring(1));
실행결과 콘솔내용
다음과같은 내용이 콘솔에 찍혔다.
그외의 작업들도 많은대 나머지는 여러분들의 몫~
도움이 되셨다면 공감클릭! 궁금하신점은 댓글!!