728x90
스프링 프레임워크
- 핵심 기술: 스프링 DI 컨테이너, AOP, 이벤트 등
- 웹 기술: 스프링 MVC, 스프링 WebFlux
- 데이터 접근 기술: 트랜잭션, JDBC, ORM 지원, XML 지원
- 기술 통합: 캐시, 이메일, 원격접근, 스케줄링
- 테스트: 스프링 기반 테스트
- 언어: 코틀린, 그루비 등
스프링 부트
: 스프링을 편리하게 사용할 수 있도록 지원, 최근에는 기본으로 사용
- 단독으로 실행가능한 스프링 애플리케이션 생성
- Tomcat같은 웹 서버를 내장해서, 별도의 웹서버를 설치할 필요 X
- 옛날에는 웹서버를 따로 깔아서 연결해야 했음
- 손쉬운 빌드 구성을 위한 starter dependency 제공
- 스프링과 서드파티 라이브러리 자동구성 (버전관리까지 다 해줌)
- 메트릭, 상태확인, 외부구성 같은 프로덕션 준비 기능 제공 (모니터링)
- 관례에 의한 간결한 설정 (필요한거만 커스텀하면 됨)
이외 서비스
Spring data
기본적인 CRUD, 데이터 접근을 관리
Spring session
세션 기능을 편리하게 사용
Spring security
보안
Spring Rest Docs
API 문서, 테스팅
Spring Batch
배치 프로세싱 관리
큰 서비스에서 한번에 엄청 많은 요청을 처리할 때 (ex. 한번에 천만명의 데이터를 업데이트), 1000건씩 나눠 처리, 저장하는 기술
Spring Cloud
클라우드
스프링이란?
(문맥에 따라 다르게 사용됨)
- 스프링 DI 컨테이너 기술
- 스프링 프레임워크
- 스프링 부트, 스프링 프레임워크를 모두 포함한 스프링 생태계
스프링이 생긴 이유
- 좋은 객체지향 애플리케이션을 개발할 수 있게 도와줌
728x90