-
스프링, 스프링 부트, 스프링 부트 스타터Spring boot 2021. 12. 11. 00:48반응형
참고 도서 : 김영재, 처음으로 배우는 스프링 부트2 , 한빛소프트, 2018, 17~30p
2018년 도서라서, 최신화가 안되어 있을 수 있음.
참고 강의 :Spring Boot를 이용한 RESTful Web Services 개발 - DowonLee
SRPING : 단독 실행가능한 애플리케이션 개발
1.스프링 부트(Spring Boot)?
- 스프링 : 자바 대표 프레임워크
- 스프링의 장점 : 안정성, 성능, DI(의존성 주입)
- 스프링 부트 :
Spinrg Boot를 사용하면 스프링은 많은 설정이 필요하지만 최소한의 설정만으로 Spring 프로젝트 개발가능.
개발자가 비지니스 로직에 집중할 수 있도록 함.
스프링 부트는 스프링 프레임워크에 속하는 도구.
1-1.스프링 부트 특징
1)임베디드 톰캣(내장형 톰캣), 제티, 언더 토우를 사용하여 스프링 애플리케이션 개발
2)통합스타터를 자동화된 스프링 설정 제공
- 메이븐/그레이들 간소화
- 스타터를 통한 자동화된 스프링 설정 제공 (스타터 컴포넌트)3)번거로운 XML설정을 요구하지 않음
- IoC, AoP, Anotacion 세팅 과정 생략4)JAR를 사용하여 자바 옵션만으로도 패키징 배포 가능
5)애플리케이션의 모니터링과 관리를 위한 스프링 액츄에이터 제공
- 통계/모니터링 라이브러리 포함해서 개발자가 쉽게 개발할 수 있음1-2.스프링 부트 장단점
장점
1)의존성 버전업 수월
2)간단한 어노테이션 설정이나 프로퍼티 설정으로 원하는 기능을 빠르게 적용
3)외장 톰캣 필요없음
단점
1)설정 커스터마이징을 하면 버전을 올릴 때 기존 스프링 프레임워크를 사용하는 것과 동일한 불편함
2)특정 설정을 개인화 혹은 설정 자체를 변경하고 싶다면 내부의 설정 코드를 봐야하는 불편함.
2.스프링 부트 스타터 : 빌드에 필요한 의존성을 자동으로 관리
build.gradle 파일에 ex) spring-boot-starter-data-jpa 한줄 추가로 JPA사용가능.
Ctrl+Space를 이용해서 spring-boot-starter 메뉴 호출가능.
2-1.spring-boot-starter가 제공하는 여섯 가지 의존성
의존성 설명 spring-boot 스프링 부트에서 기본 제공하는 의존성 spring-boot-autoconfigure 스프링 부트의 자동 환경 구성에 필요한 의존성 spring-boot-starter-logging 각종 로그를 사용하는 데 필요한 의존성 javax.annotation-api 소프트웨어의 결함을 탐지하는 어노테이션을 지원하는 의존성 spring-core 스프링 코어를 사용하는데 필요한 의존성 snakeyaml yaml을 사용하는데 필요한 의존성 2-2.spring-boot-starter 의존성 확인
1)Spring Boot Reference Guide 를 통해 의존성 확인 가능.
https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#using.build-systems.starters
2)IDE를 통해 import된 프로젝트에서 External Libraries에서 의존된 라이브러리 확인 가능
3)GitHub에서 스타터 의존성 버전 확인
4)Docs에서 의존성 버전 확인
5)스프링 부트 버전별로 차이점 확인 방법
github에서 Release Notes확인
https://github.com/spring-projects/spring-boot/wiki
반응형'Spring boot' 카테고리의 다른 글