주니어 백엔드/DevOps의 우당탕탕 스토리

Story of Jr. Backend/DevOps Developer.
ko en

1. Spring 시작해 보기: Spring Initializr를 사용해서 첫 Spring Boot 프로젝트 생성하기.

2023-01-13 spring-study

Intro

이번 동아리에서 진행하는 Spring Study을 통해서 인프런 강의를 듣고, 관련 내용을 정리합니다.

특히 해당 강의 내용은 Java Spring Boot을 기준으로 설명하지만, 적절히 현재 현업에서 사용중인 ASP.NET Core과 비교도 하면서, 관심이 많았던 Kotlin 언어를 적절히 적용해서 정리합니다.

이번 정리의 핵심

  • Spring InitializR을 사용해서 기본적인 Spring Boot 프로젝트 생성하기.
  • IntelliJ IDEA(Ultimate) + Spring InitializR를 사용해서 기본적인 Spring Boot 프로젝트 생성하기.

프로젝트 생성 시 공통 사항.

  • Gradle은 Kotlin Gradle DSL 사용
  • 언어는 Kotlin!
  • Spring Boot 버전은 3.0.1 버전 사용.
  • Dependencies:
    • Spring Web
    • Thymeleaf
  • 나머지 메타 데이터는 적절히.

Spring InitializR을 사용해서 기본적인 프로젝트 생성하기.

전체적인 흐름

  1. start.spring.io 접속
  2. 프로젝트 생성 시 공통 사항을 참고해서 프로젝트 설정
  3. 프로젝트 생성 & 다운로드
  4. IntelliJ IDEA로 프로젝트 열고, 간단하게 실행.

1. start.spring.io 접속

start.spring.io에 접속하면 기본적으로 아래와 같은 페이지가 뜨고 있습니다.

2. 프로젝트 기본 설정

아래 사진과, 공통 사항 부분을 참고해서 프로젝트 설정을 진행합니다.

3. 프로젝트 생성 & 다운로드(Generate)

start.spring.io 홈페이지에서 프로젝트 설정을 해 주고, 하단의 Generate 버튼을 클릭해서 프로젝트를 생성하고, 다운로드 합니다. 다운로드 후에 압축을 풀면, 아래 스크린샷과 같은 구조가 있을 겁니다.

4. IntelliJ IDEA로 프로젝트 열기.

IntellIJ IDEA를 실행하면 아래와 같은 창이 뜨는데, Open을 클릭해서 다운받고 압축 푼 프로젝트를 열어 줍니다. 열고 나면 아래와 같이 프로젝트가 IDE로 열리고, 몇가지 기본 작업들을 실행하고 있을 것입니다.

5. 프로젝트 실행하기.

(현재 글 작성자 본인은 Jetbrain Rider에서도 NewUI를 쓰고 있으며, 현재 IntelliJ IDEA에서도 New UI를 쓰고 있습니다.)

우측 상단에 “플레이” 버튼을 누르면 프로젝트가 빌드 & 실행 됩니다. 아래 스크린샷은 프로젝트를 실행했을 때의 모습입니다.

IntelliJ IDEA를 이용해서 프로젝트 생성

IntelliJ IDEA 자체적으로 start.spring.io의 API를 사용해서 프로젝트를 만들 수도 있습니다. 이 섹션에서는 start.spring.io 접속 없이 IntelliJ IDEA로만으로 프로젝트를 설정하는 방법을 정리합니다.

전체적인 흐름

  1. IntelliJ IDEA에서 New Project실행
  2. Generator 측에서 Spring Initializr 선택 & 프로젝트 기본 설정
  3. Dependencies 정의
  4. 프로젝트 실행

1. IntelliJ IDEA에서 New Project실행

New Project을 실행하면 다음과 같은 화면이 나옵니다.

2. Generator 측에서 Spring Initializr 선택 & 프로젝트 기본 설정

Spring Initializr은 왼쪽 사이드바에서 확인할 수 있습니다. 공통 프로젝트 설정처럼 언어 등을 설정합니다.

3. Dependencies 정의

다음으로 넘어가면 아래 사진처럼 Dependencies를 설정할 수 있습니다. 설정 후, Create 버튼을 눌러 프로젝트를 설정 & 열어 주세요.

4. 프로젝트 실행

프로젝트 실행은 Spring Initializr을 사용했을 때와 다를 바 없습니다!(아래 사진 참고)