Back-End/Spring

[Spring] 프로젝트 생성 및 환경설정

유자맛바나나 2021. 6. 28. 01:46

 

 Spring 프로젝트 만들기

Spring 프로젝트 생성 URL: https://start.spring.io/

 

https://start.spring.io/

Spring Boot 

SNAPSHOT은 정식 Release 버전이 아닌 테스트 버전이다

 

 

Project Metadata

  • Group: 보통 회사명을 적는다 ex) com.samsung
  • Artifact: Build 된 결과물

 

Dependencies: 사용할 Library 선택

  • Spring Web: 웹 프로젝트 만드는데 사용
  • Thymeleaf:  HTML을 만들어주는 템플릿 엔진. 회사마다 사용하는게 다르다

위에까지 세팅한 후 GENERATE 클릭하면 바탕화면에 생성됨(Artifact명 또는 Name)

 

 

 IntelliJ에서 프로젝트 환경설정

Spring Project Open

IntelliJ 실행 후 Open or Import > HYPEOPLE 폴더 내 build.gradle 선택 > Open > Open As Project 

 

Gradle 환경 설정

build.gradle 파일 Open

 

1. repositories

// 사용할 외부 Library를 받는 저장소
repositories {
	mavenCentral()
}
  • mavenCentral: Major Library들이 저장되어 있어 다운받을 수 있다

 

2. dependencies

// dependencies: 사용하는 Library. mavenCentral에서 내려받는다

dependencies {
	implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
	implementation 'org.springframework.boot:spring-boot-starter-web'
	testImplementation 'org.springframework.boot:spring-boot-starter-test'
}
  • Spring Project를 생성할 당시 선택했던 thymeleaf와 web(Spring Web)이 포함되어 있음
  • testImplementation은 테스트 도구인 JUnit5가 기본 내장된 것

위와 같이 starter-web, thymeleaf 를 입력하면 두 개의 라이브러리가 의존하는 모든 패키지를 함께 받게 된다. 그래서 Gradle External Libraries를 보면 내가 받지 않은 다양한 spring-boot 라이브러리가 추가된 것을 확인할 수 있다.

 

 

[주요 라이브러리]

Spring boot 라이브러리

  • spring-boot-starter-web
    1. spring-boot-starter-tomcat: 톰캣 (웹서버)
    2. spring-webmvc: 스프링 웹 MVC
  • spring-boot-starter-thymeleaf: 타임리프 템플릿 엔진(View)
  • spring-boot-starter(공통): 스프링 부트 + 스프링 코어 + 로깅
    1. spring-boot
      • spring-core
    2. spring-boot-starter-logging
      • logback, slf4j: log 관련 라이브러리는 이 두 가지 조합이 최근에는 표준

tomcat 라이브러리도 포함된 것을 확인할 수 있는데 과거에는 이러한 웹 서버(WAS)를 직접 설치하는 번거로운 작업을 해야했지만 요즘은 Spring에 내장되어 있어 이런식으로 개발한다. 

 

Test 라이브러리

  • spring-boot-starter-test
    1. junit: 테스트 프레임워크
    2. mockito: 목 라이브러리
    3. assertj: 테스트 코드를 좀 더 편하게 작성할 수 있도록 도와주는 라이브러리
    4. spring-test: 스프링 통합 테스트 지원

 

3. Gradle Project Build and Run Option

Preference > Gradle 검색 > Gradle Projects > Build and run >  Build and run using과 Run tests using 옵션을 전부 IntelliJ IDEA로 변경

 

Gradle을 통해 Build하면 느릴때가 있다고 한다.