2002년 10월 1일 로드 존스(Rod Johnsom)은 Java 기반의 Spring 프레임워크를 간소화하여 개발자들이 애플리케이션을 빠르게 구축할 수 있도록 도와주는 SpringBoot를 출시합니다.
1. Spring Boot란?
Spring Boot는 Spring 프레임워크의 확장판으로, 복잡한 설정 없이 간단한 애플리케이션을 배포할 수 있고, 내장 된 서버(예: Tomcat)를 제공해 별도의 서버 설치 없이 애플리케이션을 실행할 수 있습니다. SpringBoot의 특징은 다음과 같습니다.
- 자동 구성: Spring Boot는 애플리케이션의 의존성을 분석해 필요한 설정을 자동으로 구성
- 내장 서버: Tomcat, Jetty, Undertow 등과 같은 내장 서버를 제공하여 빠르게 애플리케이션 실행
- 의존성 관리: Maven 또는 Gradle을 통한 프로젝트의 의존성을 쉽게 관리
- 프로덕션 준비 완료: 모니터링, 매트릭스, 헬스 체크 등 프로덕션 환경에서 필요한 기능을 기본 제공
- 스타터 패키지: Spring Boot는 다양한 스타터 패키지를 제공하여 필요한 기능을 기본적으로 제공
- Restful API 개발: RESTful 서비스를 쉽게 구축할 수 있는 기능을 제공
2.Spring Boot의 장단점
- Spring Boot의 장점
- 신속한 개발: 복잡한 설정 없이 빠르게 애플리케이션을 개발
- 유연성: 다양한 플러그인과 모듈을 통해 기능을 확장할 수 있음
- 강력한 커뮤니티: Spring 생태계의 일환으로, 반대한 자료와 자원을 받을 수 있음
- 배포 용이성: Jar 파일 형태로 패키징하여 쉽게 배포
- Spring Boot의 단점
- 메모리 소비: 내장 서버를 사용하기 때문에 서버 리소스를 더 사용할 수 있음
- 복잡한 설정: 자동 구성 기능이 때때로 예기치 않은 동작을 초래할 수 있음
- 학습 곡선: Spring 프레임워크에 익숙하지 않은 경우, 초기 학습이 필요
3. Spring Boot로 만들 수 있는 프로젝트
- 웹 애플리케이션: MVC 패턴을 사용하는 웹 애플리케이션
- RESTful API: 모바일 애플리케이션 또는 웹 클라이언트를 위한 API 서비스
- 마이크로서비스: 독립적으로 배포 가능한 마이크로서비스 아키텍쳐
- 배치 처리 애플리케이션: 대량 데이터 처리를 위한 배치 작업
- IoT 애플리케이션: IoT 기기와 통신하는 서비
4.Spring Boot 개발 환경 준비
- Java JDK 설치: Java 8버전 이상이 필요합니다.
- OpenJDK 또는 Oracle JDK에서 다운로드하여 설치
- IDE 설치: IntelliJ, IDEA, Eclipse, VS Code 등과 같은 IDE를 설치합니다.
- Spring Initializr 사용
- Spring Initializr에 접속합니다.
- Project, Language, Spring Boot 버전, Dependencies 등을 선택
- "Generate" 버튼을 눌러 프로젝트 다운로드
- Maven 또는 Gradle 사용:
- Maven 또는 Gradle을 사용해 프로젝트를 생성할 수 있음
- 컨트롤러 클래스 작성
- src/main/java/com/example/helloworld에 `HelloController.java` 파일을 생성
package com.example.helloworld;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@GetMapping("/hello")
public String sayHello() {
return "Hello, World";
}
}
이제 HelloWorldApplication.java로가서 다음 코드가 맞는지 확인후 애플리케이션을 실행합니다.
package com.example.helloworld;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class HelloworldApplication {
public static void main(String[] args) {
SpringApplication.run(HelloworldApplication.class, args);
}
}
이제 HelloWorldApplication.java 파일을 열고, 실행 버튼 또는 Ctrl + F5를 눌러 애플리케이션을 실행합니다. 애플리케이션이 정상적으로 실행되면, 웹 브라우저에 http://localhost:8080/hello에 접속해 "Hello,World" 메시지가 출력되는 것을 확인해봅니다.
GitHub - Koras02/springboot-tutorial: https://thinky.tistory.com/category/Back-End/Springboot
https://thinky.tistory.com/category/Back-End/Springboot - Koras02/springboot-tutorial
github.com
LIST
'Back-End > Springboot' 카테고리의 다른 글
[Springboot] 2장 IoC (제어의 역전) 과 DI(의존성 주입) (0) | 2025.02.27 |
---|