반응형

Framework 12

IoC(Inversion of Control) 컨테이너

스프링 프레임워크를 이해하는 데 가장 중요한 개념이 바로 컨테이너이다. 컨테이너의 개념은 스프링에서 처음 사용된 것은 아니며, 기존의 서블릿이나 EJB 기술에서는 이미 사용해왔다. 그리고 대부분 컨테이너는 비슷한 구조와 동작 방식을 가지고 있으므로 서블릿 컨테이너를 통해 스프링 컨테이너의 동작 방식을 유추해볼 수 있다. 이클립스를 이용하여 서블릿 클래스를 개발한다면 작성된 Servlet 클래스는 web.xml 파일에 자동으로 등록된다. 브라우저에서 /hello.do 와 같은 URL 요청을 전송하면, hello 와 같은 이름으로 등록된 hello.HelloServlet 과 같은 클래스를 찾아 객체를 생성하고 실행한다는 설정이 web.xml에 저장되어 있다. 서블릿은 자바로 만들어진 클래스이다. 따라서 반드..

Framework 2020.12.12

스프링 프레임워크(Spring Framework)의 특징

스프링의 특징을 한 줄로 서술하면, "IoC와 AOP를 지원하는 경량의 컨테이너 프레임워크"로 표현할 수 있다. 1. 경량(Lightweight) 크기 측면에서 가볍다. 스프링은 여러 개의 모듈로 구성되어 있고, 각 모듈은 하나 이상의 JAR 파일로 구성되어 있다. 그리고 이 몇 개의 JAR 파일만 있으면 개발과 실행이 모두 가능하다. 따라서 스프링을 이용해서 만든 애플리케이션의 배포 역시 매우 빠르고 쉽다. 2. 제어의 역행(Inversion of Control) 우리가 비즈니스 컴포넌트를 개발할 때, 낮은 결합도와 높은 응집도에 신경을 쓴다. 스프링은 제어의 역행(IoC)을 통해 애플리케이션을 구성하는 객체 간의 느슨한 결합, 즉 낮은 결합도를 유지한다. 객체 사이의 의존관계를 컨테이너가 처리한다. ..

Framework 2020.12.12
반응형