TIL

스프링 빈(Bean)이란?

2022. 8. 19. 19:23
목차
  1. Bean 이란?
  2. Bean 등록 방법
728x90

Bean 이란?

Spring IoC(Inversion of Control, 제어의 역전. 제어권이 뒤바뀜. 객체 간의 의존성을 이어주는 역할.) 컨테이너가 관리하는 자바 객체이다.

new 연산자로 어떤 객체를 생성했을 때, 그 객체는 빈이 아니라 ApplicationContext.getBean으로 얻을 수 있는 객체이다.

(ApplicationContext가 만들어서 담고 있는 객체를 의미한다)

Bean 등록 방법

Component Scanning

@ComponentScan, @Component 어노테이션을 사용해서 등록한다.

Spring IoC 컨테이너가 IoC 컨테이너의 생성하고 그 안에 빈을 등록할 때 사용하는 인터페이스를 라이프사이클 콜백이라고 한다.

라이프사이클 콜백 중에는 @Component를 찾아서 해당 어노테이션이 붙어있는 모든 클래스의 인스턴스를 생성해 빈으로 등록하는 작업을 수행하는 어노테이션 프로세스가 있다.

(Spring Boot는 @ComponentScan을 사용)

Bean 설정 파일에 직접 등록

@Component 어노테이션 말고 빈 설정 파일에 직접 빈으로 등록 가능

빈 설정 파일은 자바 설정 파일로 작성 가능하다.

자바 파일 설정은 자바 클래스를 생성해서 작성할 수 있으며, 일반적으로 ~~Configuration이라 명명한다.

클래스에 @Configuration을 붙이고 @Bean을 사용해 직접 정의한다.

@Configuration을 타고 들어가면, @Component를 사용하고 있는 것을 확인할 수 있다.


Reference

https://atoz-develop.tistory.com/entry/Spring-%EC%8A%A4%ED%94%84%EB%A7%81-%EB%B9%88Bean%EC%9D%98-%EA%B0%9C%EB%85%90%EA%B3%BC-%EC%83%9D%EC%84%B1-%EC%9B%90%EB%A6%AC

728x90

'TIL' 카테고리의 다른 글

포트 / 인바운드 규칙 / 아웃바운드 규칙  (0) 2022.08.24
온프레미스(On-premise)란??  (0) 2022.08.24
NGINX 사용 이유  (0) 2022.08.24
웹서버, WAS(Web Application Server)  (0) 2022.08.24
Apache Kafka란?  (0) 2022.08.24
  1. Bean 이란?
  2. Bean 등록 방법
'TIL' 카테고리의 다른 글
  • 온프레미스(On-premise)란??
  • NGINX 사용 이유
  • 웹서버, WAS(Web Application Server)
  • Apache Kafka란?
mean-ji
mean-ji
저년차 기록들mean-ji 님의 블로그입니다.
mean-ji
저년차 기록들
mean-ji
전체
오늘
어제
  • 분류 전체보기 (104)
    • 소개 (1)
    • Server (25)
      • DevOps (9)
      • Database (4)
    • Spring (11)
    • Spring Boot (0)
    • Java (6)
    • Kotlin (3)
    • Vue.js (12)
      • Nuxt (12)
    • Node.js (3)
      • Express (2)
    • Python (9)
      • Flask (2)
    • Git (9)
    • IDE & Tool (4)
    • TIL (16)
    • 생각 (2)
    • 토스 (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

최근 댓글

최근 글

hELLO · Designed By 정상우.
mean-ji
스프링 빈(Bean)이란?
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.