본문 바로가기
백엔드/스프링 핵심 개념

Resource

by 임지혁코딩 2023. 12. 26.

URL보다 고차원적인 개념으로 파일들을 가져오기 위하여. SPRING에서 제공하는 INTERFACE  

 

 

RESOURCE라는 객체로 생성했을때, 사용할 수 있는 메소드 들.  

 

UrlResource(기본적인 url), ClassPathResource (classpath하위 리소스 접근시) FileSystemResource(file을 다룸)

 

등등이 있다 . 

실사용 -> ResourceLoader

실제 사용은 applicationContext라는 스프링의 핵심 기능을 집약해둔 모듈에서, (스프링 구성,동작등을 모두 전담)

 

이와 같이, ResourceService라는 빈을 등록하면서 ApplicationContext가 자기 자신을 ctx에 삽입.

그 이후 setResource라는 메소드를 통해서, 본인 자체로 특정 경로에 resource를 받아올 수 있다. 

(이때 그떄 그때 다른 resource를 사용) 

 

ApplicationContext가 , 어떤 경로에 따라서 실행될지를 

ResourceLoader을 불러올때, ResourcePatternReslover를 통해서 가져온다. 

적절한 경로에 따라서 , 사용할수 있다 . 

 

예전에는 직접 xml로 구성했다 (xml은 ? )

최근에는 annotation기반으로 설정 값을 찾고 있다. 이것도 사실은 클래스를 뒤져가면서 bean으로 applicationcontext 안에 넣어주게 된다. 그것들 끼리 각자 의존할 수 있게끔 하는 것. 

 

정리 : 

1. 

Resource resource = new ClassPathResource("config.properties");

초간단한 예시지만, 이것처럼 특정 경로의 파일을 독립적으로 읽어올 수 있다 .

2. 

APPLICATION CONTEXT-> 초대형 빈들의 컨테이너 . 스프링 기능의 핵심

은 자동적으로 ResourcePatternReslover를 통해서 ResourceLoader를 불러서 RESOURCE를 가져온다. 

 

질문 :

xml? 언어의종류 

 

resource의 실제사용 : 위의 정리를 통해 정리하였다. 

 

applicationcontext-> 굉장히 자주 나오는 개념. 스프링의 BEAN들을 관리하고, 의존성 주입을 통해 객체들을 관리한다. 

'백엔드 > 스프링 핵심 개념' 카테고리의 다른 글

Null Safety  (1) 2023.12.27
SpEL  (0) 2023.12.27
Validation, Data binding  (1) 2023.12.26
AOP  (0) 2023.12.25
JAVA- spring, spring boot/ BEAN  (0) 2023.12.25