Java Persistence API
Java 진영에서 사용하는 ORM 기술의 표준
JPA의 구현체로는 Hibernate ORM, EclipseLink, DataNuclues 등이 있음
별도의 설정이 없으면 스프링에서 기본값으로 Hibernate를 사용

Hibernate도 결국 JDBC를 사용함. 직접 사용하냐, ORM에 맡기냐의 차이
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
build.gradle에 의존성 추가
그리고 application.yml에서 설정:
spring:
jpa:
database: mysql // 사용할 데이터소스 지정
hibernate:
ddl-auto: update // create: 앱 시작할 때마다 테이블 스키마 리셋, update: 변경사항만 반영, validate: 스키마 검증만
show-sql: true
defer-datasource-initialization: true // datasource 초기화를 Hibernate의 테이블 생성 후로 연기 -> data.sql 실행 연기