본문 바로가기
강의 실습/스프링 핵심 원리 - 기본편

스프링이란?

by jint 2026. 3. 23.

1. 스프링 생태계
필수 : 스프링 프레임워크, 스프링 부트
선택 : 스프링 데이터(CRUD 편리하게 사용하도록 도와줌), 스프링 세션(세션 기능 편리하게 사용하도록 도와줌), 스프링 시큐리티(보안), 스프링 Rest Docs(API 문서와 테스트 엮어 편리성 제공), 스프링 배치(배치 처리에 특화된 기술), 스프링 클라우드(클라우드 기술에 특화된 기술)

-> 스프링은 여러가지 기술들의 모음

1) 스프링 프레임워크 (가장 중요)
• 핵심 기술: 스프링 DI 컨테이너, AOP, 이벤트, 기타
• 웹 기술: 스프링 MVC, 스프링 WebFlux
• 데이터 접근 기술: 트랜잭션, JDBC, ORM 지원, XML 지원
• 기술 통합: 캐시, 이메일, 원격접근, 스케줄링
• 테스트: 스프링 기반 테스트 지원
• 언어: 코틀린, 그루비
• 최근에는 스프링 부트를 통해서 스프링 프레임워크의 기술들을 편리하게 사용

2) 스프링 부트
• 스프링을 편리하게 사용할 수 있도록 지원, 최근에는 기본으로 사용
• 단독으로 실행할 수 있는 스프링 애플리케이션을 쉽게 생성 (단독 실행 가능)
• Tomcat 같은 웹 서버를 내장해서 별도의 웹 서버를 설치하지 않아도 됨 (내장 서버)
• 손쉬운 빌드 구성을 위한 starter 종속성 제공 (의존성 전부 끌어옴)
• 스프링과 3rd party(외부) 라이브러리 자동 구성 (버전 궁합 맞춰줌 - 최적화)
• 메트릭, 상태 확인, 외부 구성 같은 프로덕션 준비 기능 제공 (모니터링 제공)
• 관례에 의한 간결한 설정 (Default 설정 제공)

-> 스프링 프레임워크를 기반으로 스프링의 여러가지 기술들도 편리하게 사용하도록 도와줌

3) 스프링 단어?
• 스프링이라는 단어는 문맥에 따라 다르게 사용
  - 스프링 DI 컨테이너 기술
  - 스프링 프레임워크
  - 스프링 부트, 스프링 프레임워크 등을 모두 포함한 스프링 생태계


2. 스프링은 왜 만들었는가?
1) 핵심 개념
이 기술을 왜 만들었는가?
이 기술의 핵심 컨셉은?

-> 단순한 것에서 부터 시작한다.

2) 스프링의 핵심 개념, 컨셉?
• 웹 애플리케이션 만들고, DB 접근 편리하게 해주는 기술?
• 전자정부 프레임워크?
• 웹 서버도 자동으로 띄워주고?
• 클라우드, 마이크로서비스?

3) 스프링의 진짜 핵심
• 스프링은 자바 언어 기반의 프레임워크
• 자바 언어의 가장 큰 특징 - 객체 지향 언어
• 스프링은 객체 지향 언어가 가진 강력한 특징을 살려내는 프레임워크
• 스프링은 좋은 객체 지향 애플리케이션을 개발할 수 있게 도와주는 프레임워크 (핵심)

-> EJB에 종속되지 않고 DI 컨테이너를 통해 객체지향 프로그래밍 잘 하도록 도와줌
"좋은 객체지향 프로그래밍은 뭘까?" 이해해야 스프링 프레임워크를 제대로 이해할 수 있음


참고링크 : https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%95%B5%EC%8B%AC-%EC%9B%90%EB%A6%AC-%EA%B8%B0%EB%B3%B8%ED%8E%B8?cid=325969

 

스프링 핵심 원리 - 기본편| 김영한 - 인프런 강의

현재 평점 5.0점 수강생 49,470명인 강의를 만나보세요. 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다. 스프링 기본 기능, 스프

www.inflearn.com

댓글