스프링 부트가 다루는 영역

  • 애플리케이션 개발 관련의 거의 모든 영역을 다루고 있다.
  • 스프링을 쉽게 쓰기 위해 제공해주는 툴
빌드 * 프로젝트 생성
* 의존성 관리
* 애플리케이션 패키징 및 실행
코딩 * 개발 툴 제공
* 자동 설정
* 외부 설정
배포 및 관리 * 도커 이미지 생성
* Actuator
* 스프링 부트 어드민

프로젝트 생성

  • 디렉토리, 소스파일, 리소스 파일 만들기
  • 빌드 툴 (Maven, Gradle) 이 필요로 하는 폴더 구조를 스프링 부트 스타터가 자동으로 만들어줌
  • SNAPSHOT은 개발 중인 버전, M2 버전은 미리 공부하는 사람들용


의존성 관리

  • 프로젝트에 필요한 의존성 쉽게 관리하기
  • 버전을 적지 않았는데 어떻게 스프링 버전 5.* 가 의존성으로 들어와 있을까
  • 메이븐의 <parent>, <DependencyManagement> 그리고 <properties>를 활용한 의존성 관리

  • pom.xml 에 버전을 정의하지 않았음에도 불구하고 의존성이 잘 적용됨
  • pom.xml 에 상속이 적용되어 있다.
  • pom의 부모 파일에 가장 최신 버전이 명시되어 있으므로 생략 가능
  • 스프링 부트가 관리하지 않는 라이브러리들은 버전을 명시해야 한다.


애플리케이션 패키징 및 실행

다양한 애플리케이션 실행 방법

mvn spring-boot:run

  • 스프링 부트 메이븐 플러그인 사용
  • 메이븐을 사용해서 실행한다.
  • IDE 없이 바로 실행
  • Maven -> Plugins -> spring-boot -> spring-boot:run 클릭

  • 콘솔 실행


main 클래스 실행

  • 가장 평범한 자바 애플리케이션 실행
  • IDE를 사용하여 실행한다.

JAR 패키징 & java -jar

  • 스프링 부트 플러그인을 사용해 특수한 실행 가능한 형태의 JAR 파일을 만들 수 있다.
  • 서버에 배포하는 용도로 주로 사용한다.
  • Maven -> LifeCycle -> package 클릭 / 소스 및 모든 라이브러리가 들어감

  • 콘솔에서 java -jar uwahan-spring-boot-0.0.1-SNAPSHOT.jar 으로 애플리케이션 실행

 

'Back-end > Spring Boot' 카테고리의 다른 글

스프링 부트 웹 서비스 개발  (0) 2021.07.14
스프링부트 프로젝트 만들기  (0) 2021.07.12
스프링 부트 소개  (0) 2021.07.09
스프링 부트 - 배포 및 관리  (0) 2021.06.16
스프링 부트 - 코딩  (0) 2021.06.15

+ Recent posts