본문 바로가기
Spring Framework/SPRING MVC

Spring 컨테이너

by 거북이의 기술블로그 2024. 8. 21.
Spring Container

 

 

Spring Container

 

 

Annotaion 기반 Context

  • AppConfig 구성 ( Spring Container 생성 )
@Configuration
public class AppConfig {

    // 생성자 주입
    @Bean
    public MemberService memberService(){
        //return new MemberServiceImpl(new MemoryMemberRepository());
        return new MemberServiceImpl(new DbMemberRepository());
    }
    
    
}

 

 

  • Context 구현 (ApplicationContext)
    • ApplicationContext는 최상위의 인터페이스이고, Annotaion 또는 XmlConfig의 경우 구현체
public static void main(String []args){
    
    //Annotaion Config 생성
    ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class);
    applicationContext.getBean("memberService", MemberService.class);
    
    Member member = new Member(1L, "memberA", Grade.VIP);
    memberService.join(member);
    
    Member findMember = memberService.findMember(1L);
    System.out.println("new member = "+ member.getName());
    System.out.println("find member = "+ findMember.getName());
}

 

 

Spring Contatiner 싱글톤

  • Spring Containter는 Config의 정보를 이용해서, Bean들을 싱글톤으로 관리하게 된다
  • 자원을 효율적으로 이용하게 되고, 무분별한 생성을 방지할 수 있다

 

 

'Spring Framework > SPRING MVC' 카테고리의 다른 글

싱글톤 컨테이너  (0) 2024.08.21
Spring Bean (+ Bean Factory)  (0) 2024.08.21
SOLID 규칙 적용 (+순수 자바 버전 , spring)  (0) 2024.08.21
Spring 역사 #3 (Spring의 탄생)  (0) 2024.08.20