내 세상

[Spring] Spring in Action, Chapter 2. 빈 와이어링(묶기) 본문

Technical/Spring

[Spring] Spring in Action, Chapter 2. 빈 와이어링(묶기)

sga8 2019. 7. 30. 14:41
728x90

스프링을 사용하는 Appl.에서는 각 객체가 자신의 일을 하기 위해 필요한 다른 객체를 직접 찾거나 생성할 필요가 없음.

Container가 협업할 객체에 대한 reference를 주기 때문.

 

애플리케이션 객체 간의 이러한 연관관계 형성 작업이 바로 Dependecy Injection 개념의 핵심이며 보통 이를 wiring(와이어링)이라고 함.

 

Wiring mechanism

  • XML에서의 명시적 설정
  • Java에서의 명시적 설정
  • 내재되어 있는 빈을 찾아 자동으로 wiring하기

 

자동으로 빈 와이어링하기

  • 스프링은 두 가지 방법으로 auto wiring을 수행함.
    1. Component Scanning - Appl. context에서 생성되는 빈을 자동으로 발견함
    2. Auto Wiring - 자동으로 빈 의존성을 충족시킴.

 

cf) JUnit

  • Java의 대표적인 Testing FWK

 

 

@Component("ShinSG") 

→ Bean Name을 'ShinSG'로 지정.

→ @Named 동일 기능

 

@Autowired

→ 스프링이 빈의 요구사항과 매칭되는 Appl. Context상에서 다른 빈을 찾아 빈 간의 의존성을 자동으로 만족시키도록 하는 수단

→ 작동 과정 ) 생성자를 통해서 인스턴스화하고 클래스나 변수에 대입 가능한 빈을 전달해줌.

 

 

Summary

  • Spring FWK의 핵심은 Spring Container. 이 container는 응용 프로그램 구성 요소의 생명주기를 관리하고, 해당 컴포넌트를 만들고, 목료로 하는 동작을 제대로 할 수 있도록 의존성을 맞게 가지는지 확실하게 보장함.
  • 빈을 와이어링하는 세 가지 기본 방법 : 자동 설정, 명시적인 Java 기반 설정, 명시적인 XML 기반 설정

 

728x90