@Bean 객체 등록하기
스프링 빈과 자바 일반 객체와의 차이점은 없고 스프링 컨테이너에 의해 만들어진 객체를 스프링 빈이라고 부를 뿐이다.
(스프링 컨테이너에 등록한 객체들을 빈 이라고 한다.)
1. 컴포넌트 스캔과 자동 의존관계 설정
2. 자바 코드로 직접 스프링 빈 등록
[스프링 빈의 어노테이션 종류 ]
→ @Component ←
@Controller @Service↑ @Repository
@Configuration & @Bean
@Configuration 설정된 클래스의 메서드에서 사용가능
메서드의 리턴 객체가 스프링 빈 객체임을 선언하고, 빈의 이름은 기본적으로 메서드 이름이된다.
@Bean(name="name")으로 이름 변경 가능
@Scope를 통해 객체 생성을 조정할 수 있음
@Component 어노테이션을 통해 @Configuration 없이도 빈 객체를 생성할 수도 있음
빈 객체에 init(), destroy() 등 라이프사이클 메소드를 추가한 다음 @Bean에서 지정할 수 있음
@Configuration
public class AppConfig {
@Bean
public MyBean myBean() {
...
}
}
등록된 스프링 빈을 @Autowired로 사용하기
스프링 부트의 경우 @Component, @Service, @Controller, @Repository, @Bean, @Configuration 등으로
빈들을 등록하고 필요한 곳에서 @Autowired를 통해 의존성 주입을 받아 사용하는 것이 일반적입니다.
'SPING > Spring 정리' 카테고리의 다른 글
[Spring] Thymeleaf 사용하기 application.properties 설정 (0) | 2023.06.25 |
---|---|
[Spring] Spting @RequestMapping이란? (0) | 2023.06.14 |
[Spring] Spting JAXB2 관련 @Annotation(어노테이션) (0) | 2023.06.14 |
[Spring] Spring @ Annotation(어노테이션) (0) | 2023.06.13 |
[Spring] Spring(스프링) Spring Framework, MVC패턴(모델2) 정리 (0) | 2023.06.12 |