프로그래밍 공부
Spring Boot를 사용하는 이유와 스프링 프레임워크와의 차이 본문
🚀 스프링 부트를 사용하는 이유와 스프링 프레임워크와의 차이
Spring Boot는 Spring Framework를 더 쉽게 사용할 수 있도록 도와주는 프레임워크.
기존 Spring Framework는 설정이 많고 복잡했지만, **Spring Boot는 자동 설정(Auto Configuration)**을 제공하여 빠르게 애플리케이션을 개발할 수 있다.
1️⃣ ❓ 스프링 부트를 사용하는 이유
✅ 1. 설정이 간편하다
기존 Spring에서는 XML 설정이 많았지만, Spring Boot는 대부분의 설정을 자동으로 해준다!
- 자동 설정(Auto Configuration)
- Spring Boot Starter를 활용한 의존성 관리
✅ 2. 내장 서버 제공
Spring Boot는 Tomcat, Jetty, Undertow 등의 WAS(Web Application Server)를 내장하고 있어서 별도 서버 설치 없이 실행 가능!
./gradlew bootRun # 실행 명령어 한 줄이면 끝!
✅ 3. 빠른 애플리케이션 개발 가능
- SpringApplication.run()을 호출하는 것만으로 애플리케이션 실행
- Spring Boot Starter를 사용하면 복잡한 라이브러리 의존성을 쉽게 관리 가능
✅ 4. REST API 개발이 간편하다
- @RestController, @GetMapping 같은 어노테이션을 사용해 빠르게 API 개발 가능
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello() {
return "Hello, Spring Boot!";
}
}
✅ 5. 배포가 간편하다
Spring Boot는 JAR 파일로 패키징할 수 있어서 별도의 WAS 없이 단독 실행 가능!
java -jar myapp.jar
✅ 6. 마이크로서비스 아키텍처(MSA) 친화적
Spring Boot는 마이크로서비스 개발에 최적화되어 있어, 클라우드 환경(AWS, Docker, Kubernetes)과 쉽게 연동 가능해.
2️⃣ 🆚 스프링 프레임워크 vs 스프링 부트
비교 항목 Spring Framework Spring Boot
| 설정 방식 | XML / Java Config | Auto Configuration |
| 의존성 관리 | 수동으로 추가 | spring-boot-starter-* 제공 |
| 내장 서버 | 없음 (Tomcat 등 별도 설정 필요) | Tomcat, Jetty, Undertow 내장 |
| 애플리케이션 실행 | WAS 배포 필요 | java -jar로 실행 가능 |
| 개발 속도 | 상대적으로 느림 | 빠른 개발 가능 |
| 배포 방식 | WAR 파일로 배포 | JAR 또는 WAR 모두 가능 |
| 마이크로서비스(MSA) 지원 | 직접 설정 필요 | 클라우드 및 MSA 친화적 |
3️⃣ 🔥 스프링 부트를 사용하면 좋은 경우
✅ 빠르게 REST API를 개발하고 싶을 때
✅ XML 없이 설정을 자동화하고 싶을 때
✅ 별도 WAS 없이 실행 가능한 애플리케이션을 만들고 싶을 때
✅ 마이크로서비스(MSA) 환경에서 가볍게 배포하고 싶을 때
💡 결론
Spring Boot는 Spring Framework를 기반으로 설정을 자동화하고, 개발 속도를 높이며, 배포를 간편하게 만든 프레임워크! 🚀
'Programming > Spring' 카테고리의 다른 글
| Spring Boot Properties - Profile, ConfigurationProperties (1) | 2025.02.11 |
|---|---|
| Spring Boot를 사용하여 Hello World API 빌드하기 (0) | 2025.02.11 |
| Spring 전체 구조 알아보기(주요 모듈) 및 정리 (0) | 2025.02.10 |
| 스테레오 타입 어노테이션(Stereotype Annotation) (0) | 2025.02.10 |
| Java Spring XML 설정 (0) | 2025.02.10 |