많은 Java 개발자들이 그리고 교육기관들이 Spring Boot를 선호하는 강력한 이유는 다음과 같이 정리할 수 있습니다.
최소 구성 : Spring Boot의 자동 구성 페이지를 사용하면 데이터베이스 연결, 종속성 주입 또는 웹 서버 설정과 같은 항목을 수동으로 구성할 필요가 없습니다. 이렇게 하면 개발이 더 빠르고 쉬워집니다. 이 페이지에서 생성한 설정 파일을 활용하면 관련 라이브러리를 자동으로 다운로드하여 Spring Boot 프로젝트에 추가합니다. 예를 들어 starter-web 종속성은 애플리케이션을 REST 웹 서비스를 사용할 수 있게 해줍니다. 딱 필요한 내용만 사용하게 해줍니다.
마이크로서비스를 위한 방법 : Spring Boot는 필요한 모든 구성을 제공하므로 마이크로서비스 애플리케이션을 위한 탁월한 방법입니다. 또한 임베디드 서버와 함께 제공되므로 마이크로서비스를 만들고 실행하는 데 이상적입니다. Docker 관련 기능은 Spring Boot와 함께 제공되므로 애플리케이션도 쉽게 Docker를 사용할 수 있습니다. 이러한 기능을 통해 Spring Boot는 독립적이고 배포 가능한 서비스를 빌드할 수 있는 모든 도구를 제공합니다.
임베디드 서버 : Spring Framework를 사용할 경우, 개발한 간단한 웹애플리케이션을 사용하더라도 Apache Tomcat과 같은 Web Application Server가 필요했습니다. spring Boot를 사용하면 애플리케이션 배포를 위한 웹 서버에 대해 걱정할 필요가 없습니다. 개발한 Spring Boot 소스코드를 jar로 패키징하고 간단해 CLI 명령어로 패키징한 jar를 실행하여 웹 애플리케이션을 실행할 수 있습니다.
운영환경에 대한 기능 : Spring Boot는 운영 환경에서 웹 애플리케이션을 관리하는데 중요한 Spring Boot Actuator를 지원합니다. 웹 애플리케이션 모니터링, 상태 검사 및 성능 메트릭이 내장되어 있습니다. Spring Boot 구성시 파일에 actuator 종속성을 추가하기만 하면 됩니다.
광범위한 생태계: Spring 생태계는 방대하며 Spring Boot를 사용하면 Spring Data, Spring Security 및 Spring Cloud와 같은 다른 Spring 프로젝트와 쉽게 통합할 수 있습니다.
Spring Boot의 주요 기능
자동 구성 : Spring Boot는 빌드 파일에 언급된 종속성을 기반으로 애플리케이션을 자동으로 구성합니다.
Spring Initializr : 사용자 인터페이스를 사용하여 필요한 종속성을 선택하여 Spring Boot 프로젝트를 빠르게 생성하는 데 도움이 되는 웹 기반 도구입니다. 필요한 종속성을 선택한 후 프로젝트를 zip 파일로 다운로드할 수 있습니다.
Spring Boot CLI : Spring 애플리케이션을 빠르게 개발하기 위한 명령줄 인터페이스입니다.
임베디드 서버: Spring Boot에는 임베디드 서버가 포함되어 있으므로 별도의 웹 서버를 설치할 필요가 없습니다.
Spring Boot Actuator: 모니터링, 상태 확인 및 메트릭과 같은 필수 프로덕션 준비 기능을 제공합니다.
Spring Boot로 개발을 단순화하는 방법
전통적인 Spring 응용 프로그램에서는 웹 응용 프로그램을 설정해야합니다.
다중 구성 파일(종종 XML 또는 Java 기반 구성)
서블릿을 구성하기 위한 web.xml 파일 설정
WAR 파일을 Tomcat과 같은 서버에 수동으로 배포
그러나 Spring Boot를 사용하면 이러한 설정의 대부분이 자동으로 수행됩니다. 웹 서버를 구성하는 대신 spring-boot- starter-web 종속성을 포함하기만 하면 Spring Boot가 다음을 수행합니다.
임베디드 Tomcat 서버 시작
내장된 dispatcher 서블릿을 통한 요청 라우팅 처리
포함된 종속성에 따라 필요한 bean 또는 서비스를 설정
단 몇 줄의 코드로 단 몇 분 만에 쉽게 웹 애플리케이션을 실행할 수 있습니다.