[kotlin] 코틀린과 스프링의 데이터베이스 연동

본 문서에서는 코틀린 언어와 스프링 프레임워크를 사용하여 데이터베이스를 연동하는 방법을 살펴볼 것입니다.

목차

  1. 개요
  2. 의존성 추가
  3. 데이터베이스 설정
  4. 엔티티 클래스 생성
  5. 리포지토리 생성
  6. 서비스 및 컨트롤러 작성

1. 개요

스프링은 데이터베이스와의 연동을 위한 다양한 기능을 제공합니다. 코틀린은 자바와 호환성이 있으며 스프링 프레임워크에서도 쉽게 사용할 수 있습니다.

2. 의존성 추가

build.gradle (또는 pom.xml)에 데이터베이스 연동을 위한 의존성을 추가합니다.

dependencies {
    implementation("org.springframework.boot:spring-boot-starter-data-jpa")
    implementation("org.jetbrains.kotlin:kotlin-reflect")
    implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
    runtimeOnly("com.h2database:h2")
}

3. 데이터베이스 설정

application.properties 파일에 데이터베이스 연결 정보를 설정합니다.

spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=password
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
spring.h2.console.enabled=true

4. 엔티티 클래스 생성

코틀린으로 엔티티 클래스를 생성합니다.

import javax.persistence.Entity
import javax.persistence.GeneratedValue
import javax.persistence.GenerationType
import javax.persistence.Id

@Entity
data class User(
    @Id @GeneratedValue(strategy = GenerationType.AUTO)
    val id: Long = 0,
    val username: String,
    val email: String
)

5. 리포지토리 생성

스프링 데이터 JPA를 사용하여 리포지토리를 생성합니다.

import org.springframework.data.repository.CrudRepository

interface UserRepository : CrudRepository<User, Long>

6. 서비스 및 컨트롤러 작성

해당 엔티티에 대한 서비스 및 컨트롤러를 작성하여 데이터베이스 연동을 완료합니다.

마치며

본 문서에서는 코틀린과 스프링을 사용하여 데이터베이스를 연동하는 간단한 방법을 살펴보았습니다. 자세한 내용은 스프링과 코틀린 공식 문서를 참고하시기 바랍니다.

참고 자료