본문 바로가기
Spring Study/SpringBoot

[SpringBoot] 스프링 부트 스타터와 라이브러리 관리

by 정재인 2023. 11. 23.

1. 라이브러리 관리의 어려움

1. 수 많은 라이브러리 중 어떤 라이브러리를 사용해야 할지 고민

2. 각 라이브러리의 버전 고민 → 호환성 문제

 

이러한 문제들을 해결하기 위해 스프링 부트를 사용한다.

2. 스프링 부트 기능

1. 외부 라이브러리 버전 관리

2. 스프링 부트 스타터 제공

 

3. 스프링 부트 라이브러리 버전 관리

개발자는 원하는 라이브러리만 고르고 라이브러리의 버전은 생략해도 된다.

 

dependency-management 버전 관리

'io.spring.dependency-management' 플러그인 사용하여  'spring-boot-dependencies'에 있는 bom 정보를 참고한다.

 

 

4. 스프링 부트 스타터

'spring-boot-starter-web' 라이브러리 하나로 직접 넣어주었던 라이브러리가 포함된다.

 

스프링 부트 스타터 - 이름 패턴

- 공식: spring-boot-starter-*

- 비공식: thirdpartyproject-spring-boot-starter

 

스프링 부트 스타터 - 자주 사용하는 것

- spring-boot-starter : 핵심 스타터, 자동 구성, 로깅, YAML

- spring-boot-starter-jdbc : JDBC, HikariCP 커넥션풀

- spring-boot-starter-data-jpa : 스프링 데이터 JPA, 하이버네이트

- spring-boot-starter-data-mongodb : 스프링 데이터 몽고

- spring-boot-starter-data-redis : 스프링 데이터 Redis, Lettuce 클라이언트

- spring-boot-starter-thymeleaf : 타임리프 뷰와 웹 MVC

- spring-boot-starter-web : 웹 구축을 위한 스타터, RESTful, 스프링 MVC, 내장 톰캣

- spring-boot-starter-validation : 자바 빈 검증기(하이버네이트 Validator)

- spring-boot-starter-batch : 스프링 배치를 위한 스타터

 

라이브러리 버전 변경

외부 라이브러리의 버전을 변경하고 싶을 때 다음과 같은 형식으로 변경한다.

- ext['tomcat.version'] = '10.1.4' 

'Spring Study > SpringBoot' 카테고리의 다른 글

[SpringBoot] Actuator  (0) 2023.12.06
[SpringBoot] 외부 설정과 프로필  (0) 2023.11.30
[SpringBoot] 웹 서버와 서블릿 컨테이너  (2) 2023.11.21

댓글