Spring Boot를 사용하면 번거로움을 최소화하면서 Spring 기반의 프로덕션급 애플리케이션과 서비스를 생성할 수 있습니다. 신규 사용자와 기존 사용자가 필요한 부분에 빠르게 접근할 수 있도록 Spring 플랫폼에 대한 독단적인 관점이 필요합니다.
Spring Boot를 사용하면 java -jar
또는 보다 전통적인 WAR 배포를 사용하여 시작할 수 있는 독립형 Java 애플리케이션을 생성할 수 있습니다. 또한 Spring 스크립트를 실행하는 명령줄 도구도 제공합니다.
우리의 주요 목표는 다음과 같습니다:
모든 Spring 개발에 대해 근본적으로 더 빠르고 광범위하게 액세스할 수 있는 시작 경험을 제공합니다.
자기 의견을 주장하되 요구 사항이 기본값에서 벗어나기 시작하면 빨리 비켜가십시오.
대규모 프로젝트 클래스에 공통적으로 적용되는 다양한 비기능적 기능(예: 내장형 서버, 보안, 메트릭, 상태 확인, 외부 구성)을 제공합니다.
코드 생성이 전혀 필요하지 않으며 XML 구성이 필요하지 않습니다.
참조 문서에는 자세한 설치 지침과 포괄적인 getting started
안내서가 포함되어 있습니다.
다음은 Java로 작성된 완전한 Spring Boot 애플리케이션의 간단한 티저입니다.
import org.springframework.boot.*;import org.springframework.boot.autoconfigure.*;import org.springframework.web.bind.annotation.*;@RestController@SpringBootApplicationpublic 클래스 예 {@RequestMapping("/")String home( ) {return "Hello World!"; }public static void main(String[] args) {SpringApplication.run(Example.class, args); } }
Spring Boot에 문제가 있습니까? 우리는 돕고 싶습니다!
참조 문서, 특히 How-to를 확인하세요. 가장 일반적인 질문에 대한 솔루션을 제공합니다.
Spring 기본 사항 알아보기 — Spring Boot는 다른 많은 Spring 프로젝트를 기반으로 구축됩니다. 다양한 참조 문서를 보려면 spring.io 웹사이트를 확인하세요. Spring을 처음 사용하는 경우 가이드 중 하나를 사용해 보세요.
업그레이드하는 경우 업그레이드 지침과 "새롭고 주목할만한" 기능에 대한 릴리스 노트를 읽어보세요.
질문하세요 - spring-boot
태그가 붙은 질문이 있는지 stackoverflow.com을 모니터링합니다. Gitter에서 커뮤니티와 채팅할 수도 있습니다.
github.com/spring-projects/spring-boot/issues에서 Spring Boot의 버그를 보고하세요.
Spring Boot는 GitHub의 통합 문제 추적 시스템을 사용하여 버그 및 기능 요청을 기록합니다. 문제를 제기하려면 아래 권장 사항을 따르십시오.
버그를 기록하기 전에 이슈 트래커를 검색하여 누군가 이미 문제를 보고했는지 확인하세요.
문제가 아직 존재하지 않는 경우 새 문제를 만듭니다.
문제 보고서에 최대한 많은 정보를 제공해 주세요. 사용 중인 Spring Boot 버전, 운영 체제 및 JVM 버전을 알고 싶습니다.
코드를 붙여넣거나 스택 추적을 포함해야 하는 경우 Markdown을 사용하세요. ``는 텍스트 앞뒤로 이스케이프됩니다.
가능하다면 문제를 복제하는 테스트 사례나 프로젝트를 만들어 문제에 첨부해 보세요.
Spring Boot(repo.spring.io의 바이너리)를 사용하기 위해 소스에서 빌드할 필요는 없지만 가장 뛰어난 최신 기능을 시험해보고 싶다면 Gradle을 사용하여 Spring Boot를 빌드하고 로컬 Maven 캐시에 게시할 수 있습니다. 싸개. JDK 17도 필요합니다.
$ ./gradlewPublishToMavenLocal
그러면 모든 jar와 문서가 빌드되어 로컬 Maven 캐시에 게시됩니다. 어떤 테스트도 실행하지 않습니다. 모든 것을 빌드하려면 build
작업을 사용하세요.
$ ./gradlew 빌드
Spring Boot에는 여러 모듈이 있습니다. 다음은 간단한 개요입니다.
Spring Boot의 다른 부분을 지원하는 기능을 제공하는 기본 라이브러리입니다. 여기에는 다음이 포함됩니다.
SpringApplication
클래스는 독립형 Spring 애플리케이션을 작성하는 데 사용할 수 있는 정적 편의 메서드를 제공합니다. 유일한 임무는 적절한 Spring ApplicationContext
생성하고 새로 고치는 것입니다.
컨테이너(Tomcat, Jetty 또는 Undertow)를 선택할 수 있는 임베디드 웹 애플리케이션.
최고 수준의 외부화된 구성 지원.
합리적인 로깅 기본값에 대한 지원을 포함하는 편리한 ApplicationContext
초기화 프로그램입니다.
Spring Boot는 클래스 경로의 내용을 기반으로 일반적인 애플리케이션의 많은 부분을 구성할 수 있습니다. 단일 @EnableAutoConfiguration
주석은 Spring 컨텍스트의 자동 구성을 트리거합니다.
자동 구성은 사용자에게 필요할 수 있는 Bean을 추론하려고 시도합니다. 예를 들어 HSQLDB
클래스 경로에 있고 사용자가 데이터베이스 연결을 구성하지 않은 경우 메모리 내 데이터베이스가 정의되기를 원할 것입니다. 사용자가 자신의 Bean을 정의하기 시작하면 자동 구성은 항상 뒤로 물러납니다.
스타터는 애플리케이션에 포함할 수 있는 편리한 종속성 설명자 세트입니다. 샘플 코드를 검색하고 많은 종속성 설명자를 복사하여 붙여넣을 필요 없이 필요한 모든 Spring 및 관련 기술에 대한 원스톱 상점을 얻을 수 있습니다. 예를 들어, 데이터베이스 액세스를 위해 Spring과 JPA를 사용하여 시작하려면 프로젝트에 spring-boot-starter-data-jpa
종속성을 포함하면 됩니다.
액추에이터 엔드포인트를 사용하면 애플리케이션을 모니터링하고 상호 작용할 수 있습니다. Spring Boot Actuator는 Actuator 엔드포인트에 필요한 인프라를 제공합니다. 여기에는 액추에이터 끝점에 대한 주석 지원이 포함되어 있습니다. 이 모듈은 HealthEndpoint
, EnvironmentEndpoint
, BeansEndpoint
등을 포함한 많은 엔드포인트를 제공합니다.
이는 클래스 경로의 내용과 속성 집합을 기반으로 액츄에이터 끝점에 대한 자동 구성을 제공합니다. 예를 들어 Micrometer가 클래스 경로에 있으면 MetricsEndpoint
가 자동으로 구성됩니다. 여기에는 HTTP 또는 JMX를 통해 엔드포인트를 노출하는 구성이 포함되어 있습니다. Spring Boot AutoConfigure와 마찬가지로 사용자가 자신의 Bean을 정의하기 시작하면 이 기능도 취소됩니다.
이 모듈에는 애플리케이션을 테스트할 때 도움이 될 수 있는 핵심 항목과 주석이 포함되어 있습니다.
다른 Spring Boot 자동 구성 모듈과 마찬가지로 spring-boot-test-autoconfigure는 클래스 경로를 기반으로 하는 테스트에 대한 자동 구성을 제공합니다. 여기에는 테스트해야 하는 애플리케이션의 일부를 자동으로 구성할 수 있는 많은 주석이 포함되어 있습니다.
Spring Boot Loader는 java -jar
사용하여 시작할 수 있는 단일 jar 파일을 빌드할 수 있는 비밀 소스를 제공합니다. 일반적으로 spring-boot-loader
직접 사용할 필요는 없지만 대신 Gradle 또는 Maven 플러그인을 사용하여 작업합니다.
spring-boot-devtools 모듈은 보다 원활한 애플리케이션 개발 환경을 위해 자동 다시 시작과 같은 추가 개발 시간 기능을 제공합니다. 완전히 패키지된 애플리케이션을 실행하면 개발자 도구가 자동으로 비활성화됩니다.
spring.io 사이트에는 Spring Boot를 단계별로 사용하는 방법을 보여주는 여러 가이드가 포함되어 있습니다.
Spring Boot를 사용하여 애플리케이션 구축은 애플리케이션을 생성하고, 실행하고, 일부 관리 서비스를 추가하는 방법을 보여주는 입문 가이드입니다.
Spring Boot Actuator를 사용하여 RESTful 웹 서비스 구축은 REST 웹 서비스를 생성하는 방법을 안내하고 서버를 구성하는 방법도 보여줍니다.
Spring Boot는 Apache 2.0 라이센스에 따라 출시된 오픈 소스 소프트웨어입니다.