Spring

[Spring 완전 정복 시리즈] 2편 - 스프링이란?

dev-nadan 2025. 7. 23. 16:50

1. 스프링 프레임워크란?

스프링은 자바 플랫폼을 위한 경량 애플리케이션 프레임워크입니다. 복잡했던 과거의 엔터프라이즈 개발을 단순하게, 효율적으로 만들어 주는 핵심 철학을 바탕으로 만들어졌습니다.

핵심 철학은 바로 “POJO 기반 개발”“의존성 주입(DI)”, “관점 지향 프로그래밍(AOP)”입니다.


2. 스프링의 핵심 구성 요소

  • 스프링 컨테이너: 객체를 생성하고 관리하는 중심 역할 (IoC Container)
  • DI (Dependency Injection): 객체 간의 의존 관계를 외부에서 주입
  • AOP (Aspect Oriented Programming): 공통 기능(로깅, 트랜잭션 등)을 핵심 로직과 분리
  • 트랜잭션 처리: 선언적 방식으로 쉽게 트랜잭션을 제어
  • 스프링 MVC: 웹 애플리케이션의 요청 흐름을 처리하는 아키텍처 제공

3. 스프링의 특징 요약

특징설명
경량 프레임워크 기존 EJB 대비 가볍고 설정도 간편
POJO 기반 자바 객체만으로도 개발 가능
DI 지원 객체 간 결합도를 낮춰 유연한 설계 가능
AOP 지원 공통 기능 분리로 코드 간결화
트랜잭션 지원 선언적 트랜잭션 관리로 개발 편의성 향상
모듈화 필요 모듈만 선택적으로 사용 가능
테스트 용이성 의존성 주입 기반으로 테스트하기 쉬움