본문 바로가기
Learning-log/Spring & JPA

(스프링 핵심 원리 - 기본편) 1-(2)스프링이란?

by why제곱 2023. 3. 24.

- 스프링이란?

1. 스프링 생태계

  • 필수
    • 스프링 프레임워크
    • 스프링 부트 : 여러 스프링 기술들을 편리하게 사용할 수 있도록 도와줌
  • 선택
    • 스프링 데이터 : 데이터 베이스들의 기본적인 CRUD는 다 비슷한데, 이 기능들을 편리하게 사용할 수 있도록 도와주는 기술
    • 스프링 세션 : 세션 기능 편리하게
    • 스프링 시큐리티 : 보안 관련
    • 스프링 Rest Docs : API 문서를 편리하게 
    • 스프링 배치 
    • 스프링 클라우드

2. 스프링 프레임워크 

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

3. 스프링 부트 : 스프링 편리하게 사용할 수 있도록 지원하며 최근에는 그냥 모두 스프링 부트 사용하는 편

  • Tomcat같은 별도의 내장 웹서버 설치 불필요
  • 단독으로 실행할 수 있는 스프링 웹 어플리케이션 쉽게 생성 가능
  • starter 종속성 제공 : 예전에는 여러 라이브러리를 당겨왔어야 했는데 이를 한번에 !
  • 관례에 의한 간결한 설정

4. 스프링의 핵심

  • 자바 언어 기반의 프레임워크이며 자바의 가장 큰 특징은 객체지향
  • 이런 자바의 객체지향 특징을 살려주는 프레임워크. 좋은 객체지향 프로그래밍이 가능