스프링 부트Spring Boot
로 프로젝트를 생성하는 방법에 대해 알아보려고 한다. 과거 스프링 부트가 없던 시절에는 하나하나 설정을 해줘야 해서 번거로웠다고 하는데, 이제는 스프링 부트를 사용해서 스프링 프로젝트를 간단하게 생성할 수 있다.
스프링 부트로 프로젝트를 생성할 수 있게 해주는 웹 도구이다.
웹 사이트 : https://start.spring.io
위 사이트로 들어가면 아래와 같은 화면을 볼 수 있다. 여기서 프로젝트 설정을 해주면 된다.
빌드 도구를 선택할 수 있다. 선택지는 Gradle
과 Maven
이다.
Gradle
로 설정하면 build.gradle
또는 build.gradle.kts
라는 파일을 사용하여 프로젝트의 빌드를 설정하고 의존성을 관리한다.Gradle
을 더 많이 쓰고 있다고 한다.Gradle-Groovy
와 Gradle-Kotlin
중에서 선택할 수 있는데, 특정 IDE(IntelliJ, Android Studio)를 쓰는 경우 자동완성이 되고 오류 코드를 강조해주며, Kotlin
프로젝트의 경우 언어를 통일하기 위해 쓰는 경우가 많다고 한다.Maven
은 XML
기반의 빌드 도구로, pom.xml
파일을 사용하여 프로젝트의 빌드 설정 및 의존성 관리를 정의한다.Java
, Kotlin
, Groovy
중에서 선택할 수 있다. 사용하고자 하는 언어에 맞게 선택하면 되겠다.Snapshot
, M1
은 정식 릴리스 이전에 개발 중인 새로운 기능이나 업데이트된 코드를 미리 확인하고 테스트할 수 있는 버전이다.보통 기업의 도메인명을 넣는데, 학습용으로 개발할 때는 알아서 적당히 작성해주면 된다.
빌드 결과물(.jar)의 이름을 적는다.
프로젝트의 이름을 적는다. 따로 지정하지 않으면 Artifact
의 이름을 따라간다.
프로젝트에 대한 설명을 적는다.
프로젝트의 root
패키지 이름을 적는다. 따로 지정하지 않으면 [Group].[Artifact]
로 따라간다.
프로젝트의 빌드 타겟을 설정한다. 선택지는 JAR
와 WAR
가 있다.
JAR(Java Archive)
WAR(Web Application Archive)
Tomcat
과 같은 서블릿 컨테이너에 배포되는 전통적인 웹 애플리케이션의 배포 포맷으로, 단독 실행되지 않는다.결론적으로 배포 환경과 서버 구성에 따라 선택하면 되겠다. Spring Boot
기반 애플리케이션이라면 JAR 파일로 패키징하여 내장 서버를 활용하는 것이 일반적이다.
Java 버전을 선택한다.
Spring Web
은 기본적으로 넣는다고 생각하면 된다.설정을 마친 후 Generate
를 누르면 .zip
파일을 다운받을 수 있다. 압축을 해제하고 IDE에서 열면 된다.
나는 Gradle-Groovy
, Jar
로 설정 후 확인해보았다.
/build
프로젝트를 Gradle로 빌드하면 생기는 폴더이다. 참고로 IntelliJ로 빌드하면 out
폴더에 저장된다.
/src
/src/main
/src/main/java
: 작성한 자바 코드들을 넣는 폴더이다./src/main/resources
: 자바 파일들을 제외한 나머지 파일들을 넣는 곳이다. 기본적으로 application.properties
파일이 있으며, 환경변수를 지정할 수 있다./src/test
build.gradle
build.gradle
파일을 열어보면 이전에 설정한 값들을 확인할 수 있을 것이다.
중요한 부분만 몇 가지 살펴보자.
repositories
Maven Central
은 자바 개발자들이 라이브러리를 공유하고 검색할 수 있는 중앙 저장소이다. mavenCentral()
은 여기서 라이브러리를 받아오겠다는 뜻이다.dependencies
References
- [Java] Gradle, Groovy Gradle, Kotlin Gradle
- 강의 - 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술(김영한)