JPA 환경설정
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
DB 데이터 경로
spring.datasource.url=jdbc:mysql://localhost:3306/sbb?useUnicode=true&characterEncoding=utf8&autoReconnect=true&serverTimezone=Asia/Seoul
spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=
Hibernate
// 데이터베이스 엔진 종류를 설정한다. (MySQL 8.0.1이상에서는 MySQLDialect로 사용, 버전명 X)
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect
// 엔티티를 기준으로 테이블을 생성하는 규칙을 정의한다.
spring.jpa.hibernate.ddl-auto=update
// 실행된 쿼리를 콘솔로그에서 확인하기
spring.jpa.properties.hibernate.format_sql=true
spring.jpa.properties.hibernate.show_sql=true
spring.jpa.hibernate.ddl-auto 옵션값
위 설정에서 spring.jpa.hibernate.ddl-auto를 update로 설정했다. update와 같은 설정값에 대해서 간단히 알아보자.
none - 엔티티가 변경되더라도 데이터베이스를 변경하지 않는다.
update - 엔티티의 변경된 부분만 적용한다.
validate - 변경사항이 있는지 검사만 한다.
create - 스프링부트 서버가 시작될때 모두 drop하고 다시 생성한다.
create-drop - create와 동일하다. 하지만 종료시에도 모두 drop 한다.
개발 환경에서는 보통 update 모드를 사용하고 운영환경에서는 none 또는 validate 모드를 사용한다.