반응형
백기선님의 스프링 부트 2.0 유튜브 강의를 보고 정리한 내용입니다
스프링 부트 2.0 Day 1. 스프링 부트 시작하기 - 백기선
- 해당 영상은 spring-boot 공식 reference를 보며 학습하는 내용입니다.
SpringBoot의 정의
독립적이고, 실제 제품 수준의 Spring 기반 application을 쉽게 만들 수 있게 도와주는 framework
java -jar를 통해 쉽게 application을 시작 할 수 있다.
기존의 Spring 프로젝트는 기본 구축(Web 설정 등등)을 위해 많은 어려움과 시간을 쏟아야했다.
이를 쉽게 해주기 위해 SpringBoot가 등장
요구 사항이 다양해도, 요구 사항에 따라 다양하고 유연하게 Custom할 수 있다.
SpringBoot 2.0 스펙
- SpringBoot 2.0.0.RC2
- Java8 or higher
- Spring Framework 5.0.4.RELEASE
- Tomcat 8.5 (Servlet version 3.1)
- Jetty 9.4 (Servlet version 3.1)
- Apache Maven 3.2
- etc...
Maven 의존성 설정으로 시작하기
Maven, pom.xml으로 Springboot parent 설정과 상속 관계를 만들 수 있다.
- 의존성은 Override를 통해 변경 가능
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>{spring-boot.version}</version> <relativePath/> </parent>
태그를 통해 spring-boot-starter-parent안에 정의된 아티팩트 정보를 상속받을 수 있다.
spring-boot-starter-parent를 이용하는 이유는 의존성 관계를 쉽게 풀어내기 위해서
- 단 maven 상속 관계는 단 하나만 가능하기 때문에 기존에 상속 관계가 존재하면 태그를 이용해
- spring-boot-dependencies 관계를 설정해 사용할 수 있다.
미리 필요한 정보들을 부모 아티팩트 정보에 정의해두고, 자식 어플리케이션에서는 상속만 받아서 실행 가능
어플리케이션 구성에 필요한 spring-boot-starter**들을 지원한다.
(web, jpa, redis 등등)
Main Class
- Executable JAR 파일로 packaging하여 시작할 경우, java의 main 클래스처럼 @SpringBootApplication
어노테이션이 붙은 클래스의 main method를 시작한다. - 해당 method를 통해 commandLine에서 넘어온 Arguments를 SpringBootApplication에서 사용가능하다.
@EnableAutoConfiguration
- SpringBoot가 제공해주는 어노테이션
- SpringBoot에게 사용자가 어떤 설정을 원하는지 알려주는 역할
- ( 기본적으로 SpringBoot가 제공해주는 설정을 사용하라는 어노테이션 )
- 어떤 의존성이 ClassPath내에 존재하느냐에 따라 동작 방식 결정
- dependency로 어떤 starter를 설정해줬느냐에 따라 Auto로 설정해준다.
728x90
반응형
'Study > 백기선님의 스프링 부트 강의' 카테고리의 다른 글
Day 4. @SpringBootApplication과 XML 빈 설정 파일 사용하기 (0) | 2021.08.07 |
---|---|
Day 3. 스프링 부트 스타터 (0) | 2021.08.07 |
Day 2. Executable JAR 어떻게 만들고 어떻게 동작하는가 (0) | 2021.08.07 |