Spring Framework의 핵심: @Bean과 @Configuration 이해하기

clock icon

posted 1 month ago

설명

Spring Framework에서 @Bean@Configuration은 스프링의 핵심 어노테이션 중 일부로, 스프링의 의존성 주입(Dependency Injection) 기능과 관련 있습니다. 이들은 스프링 애플리케이션 컨텍스트에서 빈(Bean)의 생성과 관리, 그리고 설정을 위해 사용됩니다.

  • @Bean: 스프링 컨테이너에 의해 관리되는 객체(빈)를 생성하고 등록하기 위해 사용되는 어노테이션입니다. 이는 메서드 레벨에서 사용됩니다.

  • @Configuration: 해당 클래스가 스프링의 설정 정보를 담고 있으며, @Bean 어노테이션을 포함한 메서드로부터 생성된 빈들을 스프링 컨테이너에 등록하기 위한 클래스임을 나타내는 어노테이션입니다. 이는 클래스 레벨에서 사용됩니다.

 

@Bean
public MyBean myBean() {
    return new MyBean();
}

위 예시에서 myBean 메서드는 MyBean 타입의 인스턴스를 생성하고, 이 인스턴스는 스프링 컨테이너에 의해 관리되는 빈으로 등록됩니다. 이렇게 등록된 빈은 애플리케이션 전역에서 주입하여 사용할 수 있습니다.

@Configuration
public class AppConfig {
    @Bean
    public MyBean myBean() {
        return new MyBean();
    }
}

 

위 예시에서 AppConfig 클래스는 스프링 설정 클래스로, 내부에 정의된 myBean 메서드로부터 생성된 MyBean 인스턴스를 스프링 컨테이너에 빈으로 등록합니다.

Top Questions