엔지니어로 가는 길

스프링 애플리케이션의 동작 방식 본문

프로그래밍/Spring

스프링 애플리케이션의 동작 방식

탐p슨 2020. 7. 6. 11:23
728x90

스프링 애플리케이션의 동작 방식

 

스프링 IoC 컨테이너는 빈(Bean) 설정 메타정보를 이용하여 빈 객체(Object)를 만들고 DI(Dependency Injection) 작업을 수행한다. 하지만 이것만으로는 애플리케이션 동작하지 않는다. 자바 애플리케이션의 main() 메소드처럼 어디에선가 특정 빈 오브젝트의 메소드를 호출함으로써 애플리케이션을 동작시켜야 한다.

 

 

즉, 적어도 한 번은 위의 예와 같이 IoC 컨테이너에게 요청하여 빈 객체를 가져와야 하는데, 이때는 반드시 getBean()이라는 메소드를 사용해야 한다. 그러나 그 이후로는 다시 getBean()으로 빈 객체를 가져올 필요가 없다. 빈 객체들끼리 DI로 서로 연결되어 있으므로 의존관계를 타고 필요한 객체가 호출되면서 애플리케이션이 동작하기 때문이다. hello.print() 메소드를 실행했다면 더 이상 컨테이너의 도움 없이도 컨테이너 안에 구성된 빈 객체에 의해 애플리케이션이 동작한다. IoC 컨테이너의 역할은 이렇게 초기에 빈 오브젝트를 생성하고 DI 한 후에 최초로 애플리케이션을 기동할 빈 하나를 제공해주는 것까지다.

728x90
Comments