백엔드/spring boot
스프링 빈을 등록하는 2가지 방법
STUFIT
2024. 2. 22. 20:31
반응형
스프링에서 빈을 등록하는 방법은 2가지가 존재한다.
1. 컴포넌트 스캔과 자동 의존관계 설정
2. 자바 코드로 직접 스프링 빈 등록하기
먼저, 컴포넌트 스캔과 자동 의존관계를 설정하는 것을 알아보자면
- @Component 어노테이션이 있으면 스프링 빈으로 자동 등록이 된다.
- @Controller 어노테이션이 붙으면, 이것 또한 스프링 빈으로 자동 등록되는데 이유는 컴포넌트 스캔 때문이다.
@Componet를 포함하는 다음 어노테이션도 스프링 빈으로 자동 등록된다.
- @Controller
- @Service
- @Repository
두번째로는 자바 코드로 직접 스프링 빈을 등록하는 방법이다.
@Configuration 어노테이션을 이용하여 직접 빈을 등록한다.
@Configuration
public class SpringConfig {
@Bean
public UserService userService(){
return new UserService(userRepository());
}
@Bean
public UserRepository userRepository(){
return new UserRepository();
}
}
이렇게 하면 위의 자동 컴포넌트 스캔으로 @Service, @Repository를 사용하지 않고 직접 빈을 등록해서 사용할 수 있다.
반응형