[Spring] Inversion of Control & Dependency Injection
Spring Framework 스프링 프레임워크는 자바 플랫폼을 위한 오픈 소스 애플리케이션 프레임워크이다. 자바로 서비스를 개발할 때 비즈니스 로직뿐 아니라 트랜잭션 등의 로직까지 작성해야 하는 부담감을 없애고자 EJB(Enterprise JavaBeans)를 사용하였다. EJB를 사용하면서 트랜잭션 등의 로우 레벨 로직 개발 부담은 줄었지만 이런 기능을 사용하기 위해 거대한 EJB를 extends 하거나 implement 하게 되어 간단한 서비스가 무겁게 변하게 되었다. 자바의 기본적인 객체지향에 집중하고, 특정 클래스나 라이브러리에 종속되지 않는 POJO로 코드를 작성하여 이 문제를 해결하고자 하였고 스프링 프레임워크가 탄생했다. 그래서 대부분의 사람들이 스프링을 설명할 때 경량화된, 가벼운 프레임..