[java] 스프링 부트와 하이버네이트를 함께 사용하는 예제

이 예제에서는 스프링 부트와 하이버네이트를 함께 사용하여 데이터베이스를 연동하는 방법에 대해 알아보겠습니다.

1. 프로젝트 설정

먼저, 스프링 부트 프로젝트를 생성합니다. 이때, build.gradle 파일에 하이버네이트 관련 의존성을 추가해야 합니다.

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    runtimeOnly 'mysql:mysql-connector-java' // 또는 다른 데이터베이스에 맞는 JDBC 드라이버 추가
}

2. 데이터베이스 설정

src/main/resources/application.properties 파일을 생성하고, 데이터베이스 연결 및 하이버네이트 관련 설정을 추가합니다.

spring.datasource.url=jdbc:mysql://localhost:3306/your_database_name
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update

3. 엔티티 클래스 생성

다음으로, 하이버네이트를 사용하여 데이터베이스 테이블과 매핑될 엔티티 클래스를 생성합니다.

import javax.persistence.*;

@Entity
@Table(name = "users")
public class User {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    private String username;
    private String email;

    // getters and setters
}

4. 리포지토리 인터페이스 생성

엔티티에 대한 데이터베이스 조작을 위한 리포지토리 인터페이스를 생성합니다.

import org.springframework.data.jpa.repository.JpaRepository;

public interface UserRepository extends JpaRepository<User, Long> {
    // 추가적인 메서드가 필요하다면 여기에 작성
}

5. 서비스 및 컨트롤러 구현

이제 필요에 따라 서비스와 컨트롤러를 구현하여 데이터베이스 조작을 위한 비즈니스 로직 및 API 엔드포인트를 작성할 수 있습니다.

위의 단계를 완료하고 애플리케이션을 실행하면, 하이버네이트를 이용하여 데이터베이스에 접근하고 엔티티를 조작하는 스프링 부트 애플리케이션이 준비됩니다.

이 예제를 통해 스프링 부트와 하이버네이트를 함께 사용하여 데이터베이스를 연동하는 방법에 대해 배웠습니다.

참조: