스프링 부트

백현균·2023년 3월 4일
0

스프링 부트

기존 스프링프레임워크의 불편요소들에 대한 편의성을 추가하여 나온 프레임워크

1. 스프링프레임워크는 BEAN객체를 일일이 web.xml에 등록해줘야한다.
2. 스프링 실행을 위한 별도의 내장서버를 설치하고 설정해야한다.
3. 이외에 스프링프레임워크 개발에 필요한 설정들을 일일이 해줘야한다.

스프링 시작을 위한 복잡한 설정 과정을 스프링부트에서 해결

스프링부트는 프로젝트 시작에 필요한 요소들을 자동으로 구성해주므로 개발자는 쉽게 어플리케이션을 구성할 수 있다.

스프릉을 편리하게 사용할 수 있도록 지원하므로 최근에는 디폴트 프로젝트로 사용

스프링의 핵심 기능

1. 내장서버

Tomcat같은 웹 서버를 내장하고 있어, 별도의 웹 서버를 설치하지 않아도 됨

2. 자동 라이브러리 관리

손쉬운 빌드 구성을 위한 스타터 종속성 제공
	-> 예를 들어 웹 프젝트를 하고 싶을 경우 스프링부트가 제공하는 웹 라이브러리를 추가하면 관련에 필요한 
    라이브러리를 모두 제공함

스프링과 외부 라이브버리의 버전을 자동으로 관리

3. 자동 구성

프로젝트 시작에 필요한 스프링과 외부 라이브러리의 빈 객체들을 자동으로 등록

4. 외부 설정

서버 환경에 따라 DB주소나 기타 외부 설정 값 공통화

5. 모니터링과 관리 기능

모니터링을 위한 메트릭과 상태 확인을 위한 기능 제공

스프링부트 = 스프링 프레임워크

스프링부트는 스프링 프레임워크 사용에 대한 편의성제공을 위한 도구일 뿐 두 개는 같다

본질은 스프링 프레임워크

스프링 MVC, 스프링 WEB 등 부트에서 제공하는 디펜더시 라이브러리를 사용한다는 것은 곧 스프링 프레임워크를 
사용한다는 의미

스프링 부트가 제공하는 편의기능이 너무 막강하므로 사용은 필수!

스프링 부트를 배워야하는 이유

1. 편리하고, 많은 것을 자동화

스프링부트는 많은 편의기능과 자동화를 제공하기 때문에 문제가 발생했을 경우 해결이 어려울 수 있다.
그러므로 스프링부트가 제공하는 기능들의 최소한의 동작 구조들을 파악해놔야 
문제들이 발생했을 경우 해결할 수 있다.

2. 개발할 때 자주 일어날만한 문제에 대한 해결할 수 있게 제공

예를 들면 개발환경, 테스트 환경에 따라 값을 어떻게 읽어어야되는지 등
자주 일어날만한 고민이나 문제들을 해결해준다.

전체 스프링부트 동작 구조도

참고 문헌:

0개의 댓글