Spring Boot 공부 일기 <9> - JPA

이동휘·2024년 8월 19일

Spring Boot

목록 보기
9/21

1. IDE

Intellij

2. 오늘 공부 내용

JPA

  • JPA
  • 자바 객체와 관계형 데이터베이스 간의 매핑을 관리하는 ORM기술
  • SQL을 직접 작성하지 않고, 객체지향 방식으로 데이터베이스 작업을 처리할 수 있음
  • 대표적인 구현체 - Hibernate

JPA 설정(Gradle, yml)

  • Gradle
dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    implementation 'mysql:mysql-connector-java' // 사용할 데이터베이스에 맞는 드라이버 추가
}
  • application.yml
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mydatabase
    username: myuser
    password: mypassword
  jpa:
    hibernate:
      ddl-auto: update
    show-sql: true
    properties:
      hibernate:
        dialect: org.hibernate.dialect.MySQL8Dialect
  • 추가 설정
spring:
  jpa:
    hibernate:
      ddl-auto: update
    show-sql: true
    properties:
      hibernate:
        format_sql: true
        use_sql_comments: true
        cache:
          use_second_level_cache: true
          use_query_cache: false
          region.factory_class: org.hibernate.cache.jcache.JCacheRegionFactory

Repository 작성 방법

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

public interface UserRepository extends JpaRepository<User, Long> {
    // 기본적인 CRUD 메서드들은 이미 JpaRepository에 포함되어 있음
    // 추가적인 커스텀 쿼리 메서드도 작성 가능
}


// JpaRepository<Entity, Id 데이터 타입>

0개의 댓글