SpringBoot2로 Rest api 만들기(1) –  Intellij Community 프로젝트생성

SpringBoot2로 Rest api 만들기(1) – Intellij Community 프로젝트생성

이 연재글은 SpringBoot2로 Rest api 만들기의 1번째 글입니다.

Intellij에서 SpringBoot2를 실습하기 위한 가장 기본적인 설정을 진행해보겠습니다. 프로젝트의 진행은 Intellij Community 버전으로 진행합니다. 다음 사이트에서 Intellij Community 버전을 다운로드하여 설치해 주십시오.
>> JetBrain Intellij Download

Intellij - Create New Project

Create New Project를 선택합니다.

Intellij - Select Gradle Java

Gradle을 선택하고 SDK는 개발 PC에 깔려있는 JDK를 선택합니다. 혹시 개발 PC에 JDK가 깔려있지 않은 경우 먼저 아래 링크에서 JDK를 다운로드하여 설치합니다.
>> Adopted OpenJdk Downloads
오라클이 Java에 대해서 유료화 정책을 시행하고 있으므로 OpenJDK 사용을 권장드립니다.
Additional Libraries and Frameworks는 JAVA를 선택해 주십시오.

Intellij - Insert GroupId and ArtifactId

groupId는 프로젝트를 다른 모든 프로젝트 사이에서 고유하게 식별해 주는 값입니다.
artifactId는 프로젝트의 jar생성 시 버전 정보를 생략한 파일의 이름입니다.

Intellij - Set Use auto-import

Use auto-import 를 체크합니다.

Intellij - Insert Project name

Project name에 적당한 이름을 넣고 Project location의 변경이 필요하면 …을 눌러 경로를 변경하고 Finish를 눌러 주십시오.

Intellij - Execute gradle

기본으로 생성되는 프로젝트 구조입니다.
아래 내용으로 build.gradle내용을 변경하면 라이브러리가 자동으로 갱신됩니다.
혹시 갱신되지 않으면 오른쪽 Gradle탭을 누른 후 동그란 모양의 리프레시 버튼을 눌러주십시오. 처음에는 라이브러리 다운로드에 조금 시간이 걸릴 수 있습니다.
해당 프로젝트에서는 freemarker, lombok, h2, mysql을 사용하도록 설정하였습니다.

plugins {
    id 'org.springframework.boot' version '2.1.4.RELEASE'
    id 'java'
}

apply plugin: 'io.spring.dependency-management'

group = 'com.rest'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '9'

configurations {
    compileOnly {
        extendsFrom annotationProcessor
    }
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    implementation 'org.springframework.boot:spring-boot-starter-freemarker'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    compileOnly 'org.projectlombok:lombok'
    runtimeOnly 'com.h2database:h2'
    runtimeOnly 'mysql:mysql-connector-java'
    annotationProcessor 'org.projectlombok:lombok'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

Lombok 사용을 활성화하기 위해 아래처럼 File – Settings – Plugins – Lombok을 검색하여 install 합니다. install이 완료되면 IDE를 restart 합니다.

Intellij - Install Lombok Plugins

Lombok은 Java에서 도메인 모델(VO, DTO, Entitiy…)을 간편하게 사용할 수 있게 해주는 라이브러리입니다. 예를 들면 DB에서 데이터를 주고받을 때 Table에 맵핑되는 모델 생성 시엔 각 필드에 대한 Setter, Getter 정의가 필요합니다.
Lombok은 어노테이션(@~~)만 설정하면 Setter, Getter 같은 추가적인 코딩이 필요하지 않게 해 줍니다. 해당 기능 이외에도 Lombok은 여러 가지 개발 편의성을 제공하므로 사용하는 것이 개발 생산성에도 좋습니다.

Intellij - Set Annotation Processors

File – Settings – Build. Execution, Deployment – Compiler – Annotation Processors 선택 후 오른쪽 상단의 Enable annotation processing을 체크합니다.
해당 내용을 체크해야 Lombok annotation을 소스에서 인식할 수 있습니다.

Intellij - Project Structure

최종 프로젝트 구조는 위와 같습니다.
대부분의 코드는 src/main/java 아래에 package를 구성하여 작성하게 됩니다.
다음 시간엔 실제로 서버를 실행하여 HelloWorld를 실행해 보도록 하겠습니다.

최신 소스는 GitHub 사이트를 참고해 주세요.
https://github.com/codej99/SpringRestApi
GitHub로 프로젝트 구성은 다음을 참고해주세요.
https://daddyprogrammer.org/post/1215/intellij-github-spring-gradle-project-import

연재글 이동
SpringBoot2로 Rest api 만들기(2) – HelloWorld >>
공유
Close Menu