자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크로서 엔터프라이즈급 애플리케이션을 개발하기 위한 모든 기능을 종합적으로 제공하는 경량화된 솔루션이다.
엔터프라이즈급 개발이란 뜻대로만 풀이하면 기업을 대상으로 하는 개발이라는 말이다. 즉, 대규모 데이터 처리와 트랜잭션이 동시에 여러 사용자로 부터 행해지는 매우 큰 규모의 환경을 엔터프라이즈 환경이라 일컫는다.
Spirng Framework
는 경량 컨테이너로 자바 객체를 담고 직접 관리한다.
객체의 생성 및 소멸 그리고 라이프 사이클을관리하며 언제든 Spring
컨테이너로 부터 필요한 객체를 가져와 사용할 수 있다.
이는 Spirng
이IOC
기반의 Framework
임을 의미한다.
DB에서 글 목록을 꺼내, Client에게 보여주는 페이지인데
게시판을 만들고 싶다고 가정을 들어서 설명을 해보려고 한다.
JSP/Servlet
을 사용을 하여 게시판을 만들었을 때에 DAO
, ArrayList
, request
, 등을 사용하여 사용자들에게 서비스를 제공해주는 방식이 많았다.
하지만 Servlet
을 사용하면 메모리를 정말 많이 잡아 먹는데, 하나의 서비스로 통일화 시키자는 방식으로 다른 방식으로 사용하게 된다.
FrontController
가 POJO
를 사용하여 서비스를 제공해 주는 방식인 Command Pattern
인데 이것을 주 사용하여 Java
를 사용하는것이 Spring
이 되시겠다.
DispatcherServlet
이 받아 Mapping
이라는 목록에게 부탁을 하여 POJO
에 접근하여 메소드를 실행하게 된다.
JSP
파일로 이동을 하고 객체바인딩 해둔것을 꺼내서 응답을 해주게 된다.
이것을 Spring MVC
라고 한다.