Files
2021-12-13 21:23:43 +09:00

4.2 KiB

프로젝트 생성


spring initializr

  • spring initializr에서 스프링부트 기반으로 스프링 프로젝트를 만들어주는 사이트이며, 스프링이 운영하고 있다.

Maven, Gradle?

  • 필요한 라이브러리를 가져오고 빌드하는 라이프사이클까지 관리해주는 툴이다.
  • 과거에는 Maven을 많이 사용했으나 요즘 추세는 Gradle로 넘어가는 추세이다.
  • 레거시 프로젝트나 과거 프로젝트는 Maven으로 남아있는 경우가 있다.
  • 심지어 스프링 라이브러리 관리 자체도 요즘에는 Gradle로 넘어온 상황이다.
  • 따라서 Gradle을 추천한다.

Language

  • Java

Spring Boot

  • SNAPSHOT은 아직 만들고 있는 버전이다
  • M1은 정식 릴리즈된 버전이 아니다.
  • 강의상으로는 2.3.1 버전을 선택했으나 버전이 바뀌었을 때의 대처는 강의교재를 참고하자.

Project Metadata

  • Group에 보통 기업 도메인명 같은 것들을 적어준다.
  • Artifact는 빌드되어 나올 때의 결과물이라고 보면 된다(프로젝트명 같은 것).
  • 나머지(Name, Description 등)는 그대로 둔다.

Dependencies

  • 어떤 라이브러리를 가져와서 사용할 것인지를 선택하는 것.
  • Spring Web, HTML을 만들어주는 템플릿 엔진이 필요한데 이것으로 Thymeleaf선택(회사마다 다름).

GENERATE

  • 아래의 GENERATE 버튼 누르면 zip 파일이 다운로드 되는데 이 것을 압축 푼 다음 인텔리제이에서 Open or importbuild.gradle을 열면된다.
  • Open as Project 선택.

프로젝트 내부 구조

.gradle

  • 무시..

.idea

  • 인텔리제이가 사용하는 설정파일이다.

gradle -> wrapper

  • gradle과 관련해서 gradle을 사용하는 폴더이다.

src -> main, test

  • main : java(하위에 실제 패키지와 소스파일 존재), resources(실제 자바 코드파일을 제외한 xml이나 properties, html등의 설정 파일 등이 존재 -> 자바 파일을 제외한 나머지는 resources라 보면됨)

  • test : java(테스트 코드들과 관련된 소스들이 존재 -> 테스트 코드라는 것이 요즘 개발 트랜드에서는 중요하다는 뜻이다)

build.gradle

  • 중요!! 예전에는 한땀한땀 입력해야 했으나... 앞서 start.spring.io에서 선택한 설정들이 지정되어 있는 파일이다.
  • 버전 설정하고 라이브러리를 가져오는구나.. 정도로 이해하면 된다.

dependencies

  • 앞서 설정한 라이브러리들이 입력되어 있고, 여기에 입력하면 해당 라이브러리를 사용할 수 있다.
  • 요즘에는 기본적으로 테스트 라이브러리가 들어가는데 JUnit5가 기본적으로 들어간다.

repositories

  • 라이브러리를 사용하기 위해서는 다운로드를 받아야하는데, 어디서(입력된 사이트에서) 다운로드 받을지 설정을 해놓는 항목이다.

.gitignore

  • 소스코드를 관리해준다.
  • git에는 필요한 소스코드 파일만 올라가야 하며 빌드된 결과물등은 올라가면 안된다.
  • 기본적으로 어느정도는 start.spring.io에서 다 해준다.

gradlew, gradlew.bat

  • gradle로 빌드할 때 사용한다.

Application

  • springboot는 톰캣 웹 서버를 내장하고 있다.
  • 그래서 @SpringBootApplication 어노테이션이 붙어있는 클래스에서 main 메서드 내에 SpringApplication.run()의 인자로 해당 클래스와 main메서드의 args를 넣고 실행하면 내장 톰캣 웹 서버를 자체적으로 띄우면서 스프링부트가 같이 올라온다(?).

번외

  • 인텔리제이를 사용하면 빌드가 자바를 직접 실행하는 것이 아니라 gradle을 통해 실행될때가 있다.
  • 이럴 때는 설정의 Build, Execution, Deployment에서 Build and run using 항목과 Run tests using 항목을 IntelliJ IDEA로 바꿔준다.
  • gradle을 통해서 실행하면 느릴 때가 있는데, 이렇게 설정해주면 인텔리제이에서 gradle을 통하지 않고 바로 자바를 띄워서 실행하므로 훨씬 빠르다.