본문 바로가기
Dev/Spring Boot

[스프링 부트 개념과 활용] 스프링 데이터 7부

by dev_jsk 2020. 8. 27.
728x90
반응형

데이터베이스 초기화

JPA 이용

  • spring.jpa.hibernate.ddl-auto 옵션을 이용해 초기화 전략 설정 가능 
    • update : 기존 스키마는 놔두고 새로 변경된 정보만 추가
    • create-drop : App 구동 시 생성, 종료 시 스키마 삭제
    • create : App 구동 시 스키마 삭제 후 생성
    • validate : Entity와 테이블의 정합성 확인
    • none : 아무 것도 실행하지 않는다. Default
  • spring.jpa.generate-dll=true로 주어야 ddl-auto옵션 중 update, create-drop, create사용 가능
  • spring.jpa.show-sql=true설정 시 콘솔창에 스키마가 생성되는 것이 표시된다.
  • Entity 내 변수명(스키마명) 변경은 Hibernate는 인지할 수 없다.
// application.properties

spring.jpa.hibernate.ddl-auto=validate
spring.jpa.generate-ddl=false
spring.jpa.show-sql=true

SQL Script 이용

  • /resources/schema.sql 또는 schema-${platform}.sql 파일 생성
  • /resources/data.sql 또는 data-${platform}.sql 파일 생성
  • ${platform} 값은 spring.datasource.platform 옵션으로 설정 가능
// schema.sql

drop table account if exists
drop sequence if exists hibernate_sequence
create sequence hibernate_sequence start with 1 increment by 1
create table account (id bigint not null, password varchar(255), username varchar(255), primary key (id))

 

728x90
반응형

댓글