728x90
Resource 추상화
Resource 추상화라고 하니까 뭔가 말이 거창하고 어려워 보이네요. 간단하게 의미를 정의해보겠습니다. Resource 추상화는 java.net.URL을 추상화 한 것 입니다. 이게 무슨 뜻이죠.. 우선 java.net.URL이 무엇인지를 알아보아야 할 것 같습니다.
java.net.URL 이란
우선 URL은 인터넷상의 주소를 표현하는 방법을 의미합니다. URL 클래스는 웹 상에 존재하는 자원에 접근할 때 사용하는 클래스입니다.
URL 클래스를 사용하면 위와 같이 간단히 웹상의 자원을 가져올 수 있습니다.
이유
java.net.URL을 왜 추상화 했을까요?
기존 java.net.URL 클래스에는 classpath를 기준으로 resource를 가져오는 방법이 없었다고 합니다. 하지만 classpath, url 을 통해 가져오는 방법 둘다 Resource를 가져오는 방법이므로, Spring에서 이것을 추상화해 통일을 시켰다고 합니다.
classpath에서 Resource 가져오기
우선 resources디렉토리 하위에 test.txt를 만듭니다.
위와 같이 코드를 작성합니다. 주목할점은 ResourceLoader에 의해서 간단히 classpath를 통해서 Resource를 가져올 수 있다는 것입니다.
*ApplicationContext 보다는 명시적인 인터페이스인 ResourceLoader를 사용하는것이 더욱 좋다고 합니다.
'FrameWork > Spring' 카테고리의 다른 글
| Spring - AOP를 이용해 도메인과 Mobile Push 알림 기능을 분리하자 (0) | 2020.06.30 |
|---|---|
| Spring - classpath란? Intellij에서 classpath 추가하기 (0) | 2019.05.04 |
| Spring - Lombok 이란?, Intellij Lombok 설정방법 (2) | 2019.05.01 |
| Spring - IoC 컨테이너의 기능 - 6 (DataBinding 추상화, Converter, Formatter 란?) (0) | 2019.04.16 |
| Spring - IoC 컨테이너의 기능 - 5 (객체의 값 검증 Validation, Errors) (2) | 2019.04.14 |