Spring Boot를 이용한 RESTful Web Services 개발 #3 SpringBoot 개요

Jake Seo·2021년 9월 10일
0

Spring-boot-restful

목록 보기
3/17

Spring Boot의 정의

스탠드 얼론의 프로덕션 수준의 스프링을 기반으로 한 "그냥 실행하기만 하면 되는(just run)" 애플리케이션이다. 스프링 플랫폼에 대한 약간 고정적인 관점(라이브러리 등에 대한)을 가져가서 최소한의 수고로 실행시킬 수 있다. 대부분의 스프링 부트 애플리케이션은 정말 작은 스프링 설정만을 필요로 한다.

  • 독자적인 스프링 애플리케이션을 만든다.
  • 톰캣, 제티, 언더토우(?) 를 내장하여 WAR 파일을 배포할 필요가 없다.
  • 빌드 설정을 최소화하기 위해서 고정적인 '스타터' 컴포넌트를 제공한다.
  • 가능한 때마다(whenever possible) 스프링을 자동으로 설정한다.
  • 프로덕션에 쓰이는 통계, 서버 상태, 외부 설정과 같은 기능들이 제공된다.
  • 어떤 코드를 만들필요도 없고 XML 설정도 전혀 필요하지 않다.

Spring boot main class

스프링 부트를 실행할 때는 이 클래스의 main 메소드만 실행시키면 된다.

  1. Spring Boot Application
  2. Auto Configuration
  3. Component Scan
org.springframework.context.annotation.internalConfigurationAnnotationProcessor
org.springframework.context.annotation.internalAutowiredAnnotationProcessor
org.springframework.context.annotation.internalCommonAnnotationProcessor
org.springframework.context.annotation.internalPersistenceAnnotationProcessor
org.springframework.context.event.internalEventListenerProcessor
org.springframework.context.event.internalEventListenerFactory
myRestfulServicesApplication
org.springframework.boot.autoconfigure.internalCachingMetadataReaderFactory
securityConfig
swaggerConfig
customizedREsponseEntityExceptionHandler
helloWorldController
userController
userDaoService

로그를 보면 위와 같은 것들이 실행된다.

스프링부트 어플리케이션을 실행하는 순간 자동화된 설정들이 주입되고, 컴포넌트 스캔을 통해 내가 등록한 컴포넌트들을 가져가서 스프링 컨테이너에 빈의 형태로 올린다.

이러한 것을 보통 IOC라는 용어로 칭한다.

profile
풀스택 웹개발자로 일하고 있는 Jake Seo입니다. 주로 Jake Seo라는 닉네임을 많이 씁니다. 프론트엔드: Javascript, React 백엔드: Spring Framework에 관심이 있습니다.

0개의 댓글