
💡 빈(Bean)이란?
스프링의 IoC 컨테이너가 관리하는 재사용 가능한 자바 객체
빈은 컨테이너에 공급하는 메타데이터(XML 파일)에 의해 생성된다.
컨테이너는 이 메타 데이터를 통해 Bean의 생성, 생명주기, 의존성 등을 알 수 있다.
<bean id="" class=""></bean>
<bean id="" class="" scope=""></bean>
<bean id="" class="">
<property name="" value=""/>
</bean>
<bean id="" class="" init-method=""></bean>
1. 어노테이션(Annotation)을 통한 자동 등록
@Controller
public class TodoControler{
}
@Service
public class TodoService{
}
@Repository
public interface TodoRepository extends JpaRepository<Todo, Long>{
}
2. 코드를 통한 직접 등록
@Configuration
public class TodoConfig{
@Bean
public TodoRepository todoRepository(){
return new MemoryTodoRepository;
}
}
이렇게 등록한 빈들은 의존성 주입(DI)을 통해 사용한다.