본문 바로가기
개발/Spring

[Spring Boot] Java Config (@Bean @Component)

by 상용최 2020. 2. 10.
반응형

회사에서 프로젝트분석을 할 일이 생겼다.

필자는 Java로 Bean정보를 관리하는 방법을 공부했고 안다고 생각했다.

그러나 봤을때 Bean정보를 등록하는건지는 알겠으나 정확히는 알지 못했다.

기초가 부족하다고 판단하여서 기초부터 다시 공부를 하고자 마음을 먹었다.

 

  • @Configuration : 설정 파일이라는것을 알려주는 어노테이션
  • @Bean : 사용자가 직접 제어하지 못하는 외부 라이브러리를 빈으로 등록할때 사용
  • @Component : 사용자가 직접 제어할 수 있는 Class를 빈으로 등록할때 사용

@Bean 과 @Component의 사용목적이 다르기 때문에 허용되지 않는 범위에서는 사용할 수 없다. (에러 발생)

 

사용예시

 

사용자가 직접 작성한 Class이기때문에 @Component
사용자가 직접 제어할 수 없는 경우이기때문에 @Bean으로 설정

 

값이 제대로 들어가는지 테스트

빈 ArrayList와 Study클래스의 초기값이 잘 나온다.

반응형

댓글