@Configuration
@Bean
@Configuration
public class AppConfig {
@Bean
public MemberService memberService() {
return new MemberServiceImpl(memberRepository());
}
@Bean
public MemberRepository memberRepository() {
return new MemoryMemberRepository();
}
}
@Configuration
어노테이션 작성@Bean
작성public class MemberApp {
public static void main(String[] args) {
ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class);
MemberService = applicationContext.getBean("memberService", MemberService.class);
}
}
@Configuration
이 붙은 AppConfig 를 설정 구성 정보로 사용@Bean
이 적힌 메서드를 모두 호출해서 반환된 객체를 스프링 컨테이너에 등록@Bean
이 붙은 메서드 명을 스프링 빈의 이름으로 사용applicationContext.getBean()
메서드 사용