Spring/Sample Project

[Spring Boot] 기본 CRUD 구현 - 1 (셋팅)

shininghyunho 2023. 10. 4. 17:30

기존의 CRUD 과정이 계속해서 반복되기에 전체 과정을 블로그로 남긴다.

 

기본 환경

- Kotlin (Java 11)

- Spring Boot 2.7.16

- Gradle-Groovy

 

Spring Initializer를 사용하여 생성했다.

 

Dependency는 최소화하기위해 3개만 추가했다.

- Spring Web

- Spring Data JPA

- H2 Database

 

이렇게 프로젝트를 생성했고 build.gradle 파일은 다음과 같다.

import org.jetbrains.kotlin.gradle.tasks.KotlinCompile

plugins {
    id 'org.springframework.boot' version '2.7.16'
    id 'io.spring.dependency-management' version '1.0.15.RELEASE'
    id 'org.jetbrains.kotlin.jvm' version '1.6.21'
    id 'org.jetbrains.kotlin.plugin.spring' version '1.6.21'
    id 'org.jetbrains.kotlin.plugin.jpa' version '1.6.21'
}

group = 'sample'
version = '0.0.1-SNAPSHOT'

java {
    sourceCompatibility = '11'
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'com.fasterxml.jackson.module:jackson-module-kotlin'
    implementation 'org.jetbrains.kotlin:kotlin-reflect'
    runtimeOnly 'com.h2database:h2'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

tasks.withType(KotlinCompile) {
    kotlinOptions {
        freeCompilerArgs += '-Xjsr305=strict'
        jvmTarget = '11'
    }
}

tasks.named('test') {
    useJUnitPlatform()
}