Framework/SpringBoot

[SpringBoot] 데이터베이스 스키마 자동 생성 옵션에 대해 알아보자 / spring.jpa.hibernate.ddl-auto

  • -
spring.jpa.hibernate.ddl-auto에 대한 글입니다.

 

application.properties 에서 데이터베이스 관련 속성으로 spring.jpa.hibernate.ddl-auto를 많이 보셨을겁니다. 이 글에서는 이 속성과 주요 값들에 대해 알아보겠습니다.

 

spring.jpa.hibernate.ddl-auto

spring.jpa.hibernate.ddl-auto는 스프링 부트 애플리케이션에서 하이버네이트(Hibernate)를 사용할 때, 데이터베이스 스키마를 자동으로 생성, 수정 또는 유지하도록 할 수 있는 속성입니다. 이 속성을 설정함으로써 Hibernate가 데이터베이스 스키마를 자동으로 처리할 수 있습니다.

 

create

create는 애플리케이션 실행 시에 스키마를 새로 생성합니다. 기존 데이터베이스의 데이터는 모두 삭제됩니다.

spring.jpa.hibernate.ddl-auto=create

 

create-drop

create-drop은 애플리케이션을 시작할 때 스키마를 생성하고, 애플리케이션이 종료될 때 스키마를 삭제합니다.

spring.jpa.hibernate.ddl-auto=create-drop

update

update는 애플리케이션 실행 시에 스키마를 자동으로 업데이트합니다. 새로운 엔티티가 추가되거나 기존 엔티티의 변경이 반영됩니다. 하지만, 기존 테이블의 칼럼 삭제 등은 수행하지 않습니다. 

spring.jpa.hibernate.ddl-auto=update

 

validate

validate는 애플리케이션 실행 시에 스키마를 유효성 검증하며, 변경 사항은 적용하지 않습니다. 즉, 스키마와 엔티티 클래스 간의 불일치를 확인할 수 있습니다. 

spring.jpa.hibernate.ddl-auto=validate

none

none은 하이버네이트가 스키마를 자동으로 관리하지 않도록 합니다. 기존 스키마를 그대로 사용하며, 엔티티 변경 사항은 무시됩니다.

spring.jpa.hibernate.ddl-auto=none
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.