프로그래밍/Java

스프링에서 빈(Bean)을 등록하는 두가지 방법

소행성왕자 2024. 12. 19. 14:52

1. 어노테이션 기반 빈 등록

  • 스프링이 제공하는 특정 어노테이션을 클래스에 선언하여 빈으로 등록하는 방식입니다.
  • 대표적인 어노테이션:
    • @Component: 일반적인 컴포넌트로 빈 등록.
    • @Controller: MVC 패턴에서 컨트롤러 역할을 하는 클래스에 사용.
    • @Service: 비즈니스 로직을 처리하는 서비스 레이어 클래스에 사용.
    • @Repository: 데이터 접근을 담당하는 DAO 클래스에 사용.
  • 어노테이션 사용 시 스프링이 **컴포넌트 스캔(Component Scan)**을 통해 해당 클래스를 찾아 빈으로 등록합니다.

예제

@Component
public class MyComponent {
    public void doSomething() {
        System.out.println("Component 실행");
    }
}

https://www.inflearn.com/courses/lecture?courseId=325630&unitId=49586&subtitleLanguage=ko

 

학습 페이지

 

www.inflearn.com

 

 

2. 자바 코드 기반 빈 등록

  • 스프링의 @Configuration과 @Bean을 사용하여 명시적으로 빈을 등록하는 방식입니다.
  • 이 방식은 특정 빈의 생성 과정에서 세부 설정이 필요할 때 유용합니다.

예제

@Configuration
public class AppConfig {
    
    @Bean
    public MyComponent myComponent() {
        return new MyComponent();
    }
}

public class MyComponent {
    public void doSomething() {
        System.out.println("Bean으로 등록된 Component 실행");
    }
}

https://www.inflearn.com/courses/lecture?courseId=325630&unitId=49587&subtitleLanguage=ko

 

학습 페이지

 

www.inflearn.com