스프링 부트(Spring Boot)는 스프링 프레임워크를 더 쉽게 사용할 수 있도록 도와주는 강력한 툴입니다. 다양한 스타터(Starter) 패키지를 제공하여 개발자가 빠르게 애플리케이션을 구성할 수 있도록 지원합니다.
이번 글에서는 스프링 부트에서 중요한 라이브러리들을 정리하고, 각 라이브러리의 역할과 특징을 설명하겠습니다.
1. 스프링 부트 핵심 라이브러리
1.1 spring-boot-starter (공통 패키지)
- 스프링 부트 프로젝트의 기본적인 설정 및 라이브러리를 포함합니다.
- spring-core, spring-boot, spring-boot-starter-logging 등을 포함합니다.
1.2 spring-boot
- 스프링 부트의 핵심 라이브러리로, 자동 설정(Auto Configuration) 기능을 제공합니다.
1.3 spring-core
- 스프링의 기본적인 기능(IoC, DI 등)을 제공하는 핵심 모듈입니다.
1.4 spring-boot-starter-logging
- 기본 로깅 설정을 제공하며, 내부적으로 logback과 slf4j를 사용합니다.
2. 웹 애플리케이션 관련 라이브러리
2.1 spring-boot-starter-web
- 웹 애플리케이션 개발을 위한 기본적인 설정을 포함하며, 내부적으로 spring-webmvc를 포함합니다.
- DispatcherServlet, RestController 등의 기능을 지원합니다.
2.2 spring-boot-starter-tomcat
- 내장 웹 서버로 Apache Tomcat을 사용하도록 설정합니다.
- 별도의 WAS(Web Application Server) 없이 실행 가능하게 해줍니다.
2.3 spring-webmvc
- 스프링 MVC 패턴을 기반으로 한 웹 애플리케이션 개발을 지원합니다.
- 웹 요청을 처리하는 컨트롤러, 뷰 처리 등을 포함합니다.
2.4 spring-boot-starter-thymeleaf
- Thymeleaf(타임리프) 템플릿 엔진을 사용하여 HTML을 동적으로 렌더링할 수 있도록 지원합니다.
- 서버 사이드 렌더링(SSR) 기반의 웹 개발을 도와줍니다.
3. 테스트 관련 라이브러리
3.1 spring-boot-starter-test
- 스프링 부트에서 제공하는 테스트 라이브러리 모음입니다.
- 내부적으로 다양한 테스트 프레임워크를 포함하고 있습니다.
3.2 JUnit
- 자바 기반의 대표적인 테스트 프레임워크로, 단위 테스트 및 통합 테스트를 수행하는 데 사용됩니다.
3.3 Mockito
- 목(Mock) 객체를 생성하여 테스트를 쉽게 할 수 있도록 도와주는 라이브러리입니다.
3.4 AssertJ
- 테스트 코드에서 가독성을 높이고 직관적인 검증을 할 수 있도록 지원하는 라이브러리입니다.
3.5 Spring-test
- 스프링 통합 테스트를 지원하는 라이브러리입니다.
스프링 부트는 다양한 라이브러리를 활용하여 빠르고 효율적으로 애플리케이션을 개발할 수 있도록 지원합니다.
위에서 소개한 라이브러리들은 스프링 부트 애플리케이션 개발에 있어 필수적인 요소이며, 프로젝트의 요구사항에 맞는 적절한 라이브러리를 선택하여 효율적인 개발을 진행할 수 있습니다.
'개발일지 > Spring' 카테고리의 다른 글
객체지향원칙을 고려한 Spring 테스트 설계 전략 (JUnit) (0) | 2025.02.06 |
---|---|
Spring 테스트 케이스 작성 방법과 팁 (JUnit) (2) | 2025.02.06 |
Thymeleaf(타임리프) 템플릿엔진 ? (0) | 2025.02.06 |
Spring 프로젝트 기본 환경 설정 - Intellij (0) | 2025.02.06 |
Spring, 좋은 객체 지향 프로그래밍이란?, SOLID, 객체 지향 설계와 스프링 (by.김영한) (0) | 2025.01.21 |