스프링부트 v2.5 - sql 스크립트 동작 설정방법 변경

Created:
Updated:

v2.5버전으로 업데이트 되면서 sql 스크립트 동작 설정방법이 변경되었다.

sql 스크립트 동작 설정하기

v2.4 이하 설정: spring.datasource.initialization-mode
v2.5 이상 설정: spring.sql.init.mode

위 설정은 schema.sql,data.sql등의 스크립트를 동작할지 설정한다. 설정 가능한 옵션으로는 ALWAYS, EMBDDED, NEVER 가 있는데 EMBDDED가 기본설정이다.

  • ALWAYS: 모든 데이터베이스에 sql 스크립트를 동작시킨다.
  • EMBDDED: embedded 데이터베이스만 sql 스크립트를 동작시킨다.
  • NEVER: 모든 데이터베이스에 sql 스크립트를 동작시키지 않는다.

hibernate에 의한 스키마 생성부터 진행하도록 설정하기

기본적으로 sql 스크립트(schema.sql, data.sql)가 먼저 동작하고 ddl-auto(hibernate)가 실행되는데 ddl-auto를 먼저 실행하고자 한다면 spring.jpa.defer-datasource-initializationtrue로 설정할경우 ddl-auto를 먼저 실행하고, 그후 sql 스크립트 파일이 동작하도록 순서를 바꿀 수 있다.

Comments