[Springboot] 1장 Springboot란?

https://x.com/springrod/photo

 

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버전 이상이 필요합니다.
  • 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