IoC (Inversion Of Control) - 제어의 역전- 객체(인스턴스)의 생명주기 관리를 개발자가 아닌 Spring Container (IoC Container) 가 모두 맡아서 함 기존 프로그램은 클라이언트 구현 객체가 스스로 필요한 서버 구현 객체를 생성하고, 연결했다.-> 제어 흐름을 스스로 조종했다스프링 컨테이너를 사용하면 프로그램에 대한 제어 흐름에 대한 권한은 모두 스프링 컨테이너가 가지고 있다.-> 외부에서 관리하는 것 => 제어의 역전(객체를 제어하고 관리하는 역할이 개발자로부터 스프링 컨테이너에 역전) 스프링 컨테이너란ApplicationContext를 스프링 컨테이너라고 부른다.@Bean 이라 적힌 메서드를 모두 호출해서 반환된 객체를 스프링 컨테이너에 등록한다.장점: 싱글톤..