제어의 역전 ( IoC (Inversion of Control) ) 프로그램의 제어 흐름을 직접 제어하는 것이 아니라 외부에서 관리하는 것을 제어의 역전(IoC)이라 한다. 스프링 컨테이너가 필요에 따라 개발자 대신 Bean들을 관리(제어)해주는 행위 (내가 뭔가 호출하는게 아니라 객체 관리 프로그램이 내 코드를 대신 호출해줌) 제어권이 뒤바뀐다 ! 기존 프로그램은 클라이언트 구현 객체가 스스로 필요한 서버 구현 객체를 생성하고, 연결하고, 실행했다. 한마디로 구현 객체가 프로그램의 제어 흐름을 스스로 조종했다. 하지만 Spring에서는 xml파일 또는 어노테이션 방식으로 스프링 컨테너에 Bean(객체)를 등록하기만 하면, 스프링 컨테이너에서 Bean의 생명주기(생명 -> 의존성 설정 -> 초기화 -> ..