스프링
스프링 부트(Spring Boot)
생각없는 개발자
2025. 2. 17. 13:00
Spring Boot는 Spring Framework를 기반으로 하면서도 설정을 최소화하여 빠르게 애플리케이션을 개발할 수 있도록 도와주는 프레임워크다. 일반적인 Spring 애플리케이션보다 간편한 설정, 내장 서버, 자동 구성등을 지원하며, 개발자의 생산성을 극대화한다.
1. Spring Boot의 주요 특징
- Spring 기반의 빠른 개발 환경
- Spring Boot는 기존 Spring Framework의 복잡한 설정을 제거하고 빠른 개발 환경을 제공한다.
- application.properties 또는 application.yml 등의 간단한 설정 파일로 애플리케이션을 조정할 수 있다.
- 자동 구성
- Spring Boot는 spring-boot-starter 의존성을 사용하여 자동으로 적절한 설정을 수행한다.
- 예를 들어, H2 데이터베이스 의존성을 추가하면 자동으로 임베디드 데이터 베이스를 설정해준다.
- 필요 시 @EnableAutoConfiguration(exclude = {제외할 설정})로 특정 자동 구성을 제외할 수도 있다.
- 내장 서버 지원
- Tomcat, jetty Undertow 등의 웹 서버가 내장되어 있어 별도의 WAS(Web Application Server) 설치 없이 실행할 수 있다.
- spring-boot-starter-web 의존성을 추가하면 기본적으로 Tomcat을 내장 서버로 사용한다.
- Spring Boot Starter 의존성 관리
- Spring Boot는 프로젝트에서 자주 사용하는 기술을 손쉽게 설정할 수 있도록 starter 패키지를 제공한다.
- Spring Boot CLI
- Groovy를 이용해 Spring 애플리케이션을 빠르게 실행할 수 있도록 CLI(Command Line Interface)를 제공한다.
- CLI를 활용하면 단순한 웹 애플리케이션을 몇 줄의 코드로 실행할 수 있다.