Spring Boot란 Spring을 기반으로 좀 더 쉽게 개발할 수 있도록 하는 것에 초점을 두고 개발한 유틸리티 프로젝트입니다.
Spring Boot는 최소한의 구성/코드로 스프링 웹 애플리케이션을 실행할 수 있도록 하는 최단 경로를 제공합니다.
Spring Boot는 개발자에게 다음과 같은 기능을 제공합니다.
Spring boot는 필요로 하는 외부 의존성을 암시적으로 패키징하고, starter를 이용해 개발자들에게 노출시킵니다.
starter란 스프링 애플리케이션에 포함시킬 수 있는 편리한 dependency descriptors입니다. 개발자는 pom.xml에 dependency를 정의하여 애플리케이션에서 필요한 기능들을 사용할 수 있습니다.
Spring boot 개발간 dependency를 추가할 경우, 추가한 dependency를 스프링 애플리케이션에서 자동으로 구성해줍니다.
개발자는 자동 구성을 원치 않을 경우 custom 하여 dependency에서 자동 구성해주는 일부 기능들을 구성하지 않을 수 있습니다.
Spring과는 달리 개발자는 서블릿 컨테이너를 설정할 필요가 없어졌습니다. 스프링 애플리케이션은 내장된 서버를 사용해 실행 가능한 jar파일로 스스로 실행 할 수 있습니다.
Spring 기반 어플리케이션을 개발시 구성 순서는 다음과 같습니다.
비즈니스 요구사항을 해결해주는 여러 프로젝트들이 존재한다.
Spring Data: 관계형 데이터베이스 또는 NoSQL에 쉽게 접근하는 프로젝트
Spring Batch: 배치 처리 프레임워크
Spring Security: 보안 어플리케이션 프로젝트
Spring Social: Facebook, Twitter, LinkedIn, GitHub 등 소셜 네트워킹 사이트를 통합해 지원한다.
Spring Integration: 기업 애플리케이션이 다른 애플리케이션과 통합을 용이하게 하기 위해 만든 프로젝트. (경량화된 메세징 또는 선언된 어댑터를 사용)
https://dzone.com/articles/introducing-spring-boot?utm_source=dzone&utm_medium=article&utm_campaign=spring-boot-content-cluster
https://dzone.com/articles/why-springboot?utm_source=dzone&utm_medium=article&utm_campaign=spring-boot-content-cluster
https://dzone.com/articles/what-is-spring-boot?utm_source=dzone&utm_medium=article&utm_campaign=spring-boot-content-cluster