스프링 부트 튜토리얼

Spring Boot 튜토리얼에 오신 것을 환영합니다. Spring Boot은 Pivotal Team(The Spring Team)에서 완전히 새로운 프로젝트입니다. 기존 Spring Framework를 기반으로 개발된 프레임워크입니다.

Spring Boot 튜토리얼

Spring Boot은 일부 지루한 개발 단계와 보일러플레이트 코드 및 설정을 피함으로써 Java 개발을 매우 쉽게 만드는 완전히 새로운 개발 모델을 사용합니다.

Spring Boot은 무엇인가요?

Spring Boot은 새로운 Spring 애플리케이션의 부트스트래핑과 개발을 쉽게하기 위한 “The Spring Team”의 프레임워크입니다. 새로운 Spring 프로젝트를 빠르게 시작하기 위해 코드와 주석 구성에 대한 기본값을 제공합니다. 개발, 단위 테스트 및 통합 테스트 프로세스를 개선하기 위해 “의견 있는 기본 구성” 접근 방식을 따릅니다.

Spring Boot은 무엇이 아닌가요?

Spring Boot 프레임워크는 Spring Team에 의해 처음부터 구현되지 않았으며 기존의 Spring Framework (Spring IO Platform) 위에 구현되었습니다. 이는 새로운 문제를 해결하기 위해 사용되는 것이 아닙니다. Spring Framework와 같은 문제를 해결하기 위해 사용됩니다.

Spring Boot를 사용하는 이유?

  • Java 기반 애플리케이션 개발, 단위 테스트 및 통합 테스트 프로세스를 용이하게 하기 위해.
  • 일부 기본값을 제공함으로써 개발, 단위 테스트 및 통합 테스트 시간을 줄이기 위해.
  • 생산성을 높이기 위해.

이 단계에서 “의견에 따른 기본 구성” 접근 방식이 무엇인지 걱정하지 마십시오. 다음 게시물에서 예를 들어 자세히 설명하겠습니다.

Spring Boot의 장점:

  • Java 또는 Groovy로 Spring 기반 애플리케이션을 개발하기가 매우 쉽습니다.
  • 많은 개발 시간을 절약하고 생산성을 높입니다.
  • 많은 boilerplate 코드, 주석 및 XML 구성을 작성하는 것을 피합니다.
  • Spring JDBC, Spring ORM, Spring Data, Spring Security 등 Spring Boot 응용 프로그램을 Spring 생태계와 매우 쉽게 통합할 수 있습니다.
  • 개발자의 노력을 줄이기 위해 “의견에 따른 기본 구성” 접근 방식을 따릅니다.
  • 그것은 Tomcat, Jetty 등과 같은 내장 HTTP 서버를 제공하여 웹 응용 프로그램을 매우 쉽게 개발하고 테스트할 수 있습니다.
  • 그것은 명령 프롬프트에서 Spring Boot(Java 또는 Groovy) 응용 프로그램을 매우 쉽고 빠르게 개발하고 테스트하기 위한 CLI(명령 줄 인터페이스) 도구를 제공합니다.
  • 그것은 Maven 및 Gradle과 같은 빌드 도구를 사용하여 Spring Boot 응용 프로그램을 개발하고 테스트하기 위한 다양한 플러그인을 제공합니다.
  • 그것은 내장 및 인메모리 데이터베이스와 함께 작업하기 위한 다양한 플러그인을 제공하여 매우 쉽게 사용할 수 있습니다.

간단한 용어로 말하면, Spring Boot는 기존의 Spring Framework + 일부 내장 HTTP 서버 (Tomcat/Jetty 등) – XML 또는 주석 구성입니다. 여기서 마이너스는 어떠한 XML 구성도 작성할 필요가 없고 일부 주석만 작성하면 된다는 것을 의미합니다.

Spring Boot의 주요 목표:

Spring Boot 프레임워크의 주요 목표는 기존의 Spring Framework보다 개발, 단위 테스트 및 통합 테스트 시간을 줄이고 프로덕션 준비 웹 응용 프로그램을 개발하는 것을 매우 쉽게 만드는 것입니다. 이것은 실제로 더 많은 시간이 걸리는 기존의 Spring Framework와 비교할 때입니다.

  • XML 구성을 완전히 피하기 위해
  • 더 많은 Annotation Configuration을 정의하지 않기 위해서(기존의 Spring Framework Annotation을 간단하고 단일한 Annotation으로 결합함)
  • 많은 import 문을 작성하지 않기 위해서
  • 새 프로젝트를 빠르게 시작하기 위해 일부 기본값을 제공하기 위해서
  • 의견이 있는 개발 접근 방식을 제공하기 위해서

이러한 기능을 제공하거나 피함으로써, Spring Boot Framework는 개발 시간을 줄이고 개발자의 노력을 줄이며 생산성을 증가시킵니다.

Spring Boot의 한계/단점:

Spring Boot Framework에는 한 가지 제한이 있습니다. 기존 또는 레거시 Spring Framework 프로젝트를 Spring Boot 애플리케이션으로 변환하는 과정이 다소 시간이 소요됩니다. 그러나 모든 종류의 프로젝트를 Spring Boot 애플리케이션으로 변환할 수 있습니다. Spring Boot를 사용하여 새로운/그린필드 프로젝트를 만드는 것은 매우 쉽습니다. Spring Boot 애플리케이션을 생성하기 위해 의견이 있는 접근 방식을 시작하려면 Spring 팀(The Pivotal Team)이 다음과 같은 세 가지 접근 방식을 제공했습니다.

  • Spring Boot CLI 도구 사용
  • Spring STS IDE 사용
  • Spring Initializr 웹사이트 사용

다음 포스트에서 예제와 함께 자세히 하나씩 살펴보겠습니다. Spring Initializr 웹사이트는 다음 주소에서 찾을 수 있습니다: https://start.spring.io/ Spring Boot를 사용하여 두 가지 유형의 Spring 기반 애플리케이션을 개발할 수 있습니다

  • Java 기반 애플리케이션
  • 그루비 애플리케이션

우리는 Spring Boot CLI 또는 Spring STS IDE 또는 Spring Initializr 웹사이트를 사용하여 Spring Boot 그루비 애플리케이션을 개발할 수 있습니다. 그러나 Spring STS IDE 또는 Spring Initializr 웹사이트를 사용하여 Spring Boot Java 애플리케이션을 개발할 수도 있습니다. 어쨌든 그루비는 또한 Java 언어와 거의 유사한 JVM 언어입니다. 우리는 그루비 파일이 최종적으로 *.class 파일로 컴파일되기 때문에 그루비와 Java를 하나의 프로젝트에 결합할 수 있습니다. *.groovy 및 *.java 파일은 모두 *.class 파일(동일한 바이트 코드 형식)로 변환됩니다. Spring Boot 프레임워크 프로그래밍 모델은 그루비 프로그래밍 모델에서 영감을 받았습니다. Spring Boot는 내부적으로 몇 가지 Groovy 기반 기술과 도구를 사용하여 기본 가져오기와 구성을 제공합니다. Spring Boot 프레임워크는 기존의 Spring Framework 주석을 몇 가지 간단하거나 단일 주석으로 결합했습니다. 우리는 이후의 게시물에서 실제 예제를 통해 이러한 주석을 하나씩 살펴볼 것입니다. Spring Boot 프레임워크는 Spring-Java 기반 애플리케이션 프로그래밍 모델을 새로운 프로그래밍 모델로 drastcally 변경합니다. 현재로서 Spring Boot는 초기 단계에 머물러 있지만 미래는 전적으로 Spring Boot에 달려 있습니다. 즐거운 Spring Boot 프레임워크 학습을 기원합니다!

Source:
https://www.digitalocean.com/community/tutorials/spring-boot-tutorial