Spring : Bean 등록하기

김선미·2022년 8월 30일
0

Component scan

  • component 가 포함된 어노테이션을 사용하면 자동으로 스프링 빈으로 등록된다.
  • 스프링은 스프링 컨테이너에 스프링 빈을 등록할 때, 기본으로 싱글톤으로 등록한다. 따라서 같은 스프링 빈을 공유할 경우 모두 같은 객체이다.

직접 코드 작성

  • SpringConfig 클래스 작성하여 Bean으로 직접 등록한다.
@Configuration
public class SpringConfig {
    @Bean
    public MemberService memberService() {
        return new MemberService(memberRepository());
    }

    @Bean
    public MemberRepository memberRepository(){
        return new MemoryMemberRepository();
    }
}
  • controller는 스프링에서 관리해야 하기 때문에 component scan을 사용한다.
  • controller, service, repository 같은 정형화 된 코드에는 component scan을 주로 사용한다.
  • 정형화 되지 않거나 구현한 클래스가 변경될 가능성이 있는 경우에 직접 코드로 작성한다.

참조
스프링 입문 - 김영한

profile
백엔드 개발 공부

0개의 댓글