Bean
Spring 에서는 Spring Container에 객체들을 저장하여 객체끼리의 의존성을 주입해주는 역할을 합니다. 이때 Spring Container에 등록되는 객체들을 Bean이라고 합니다.
- 특징
- @Configuration이 선언된 클래스의 메소드에서 사용가능합니다.
- 메소드의 반환객체가 스프링 Bean 객체임을 선언하는 작업입니다.
- Bean의 이름은 기본적으로 메소드 이름이고, 원한다면 바꿀 수 있습니다.
Bean을 등록하는 방법
@Component
Spring Boot에서는 클래스 선언부 위에 @Component를 선언하면 Bean으로 등록해줍니다.
자주 사용하는 @Controller, @Service, @Repository는 모두 @Component를 포함하고 있습니다.
직접 등록
Bean을 등록하기위한 클래스를 만들고 해당클래스에 @Configuration을 선언한 뒤
원하는 타입을 리턴하는 메소드를 생성 후 @Bean 을 선언해주면 됩니다.
Bean 생명주기
스프링 IOC 컨테이너가 위에서 설명드린 객체끼리의 의존성을 주입해주는 역할을 하는 컨테이너입니다.
- 스프링 IOC 컨테이너 생성
- 스프링 빈 생성
- 의존관계 주입
- 초기화 콜백 메소드 호출
- 사용
- 소멸 전 콜백 메소드 호출
- 스프링 종료
스프링은 의존관계 주입이 완료되면 콜백 메소드를 통해 스프링 Bean의 초기화 시점과 소멸 시점을 알려줍니다.
● 참고자료 : https://dev-coco.tistory.com/170#head1
'Spring' 카테고리의 다른 글
[Spring] application-{환경}.yml 과 @Value (0) | 2023.04.17 |
---|---|
[Spring] 단위 테스트 (0) | 2023.03.24 |
[Spring] Spring MVC (0) | 2023.02.16 |
[Spring] @Transactional (0) | 2023.02.16 |
[Spring] Redis (0) | 2023.02.11 |