인프런 커뮤니티 질문&답변

정준상님의 프로필 이미지
정준상

작성한 질문수

[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발

Spring Data JPA를 이용한 초기 데이터 생성

data.sql를 스프링부트가 시작하면서 어떻게 자동적으로 읽어들이는걸까요?

작성

·

781

2

스프링부트가 시작하는 시점에 어떻게 data.sql를 읽어들이는걸까요? 해당 경로를 명시한 곳이 내부적으로 있을까요?

답변 1

4

Dowon Lee님의 프로필 이미지
Dowon Lee
지식공유자

안녕하세요, 이도원입니다. 

Spring Boot가 DataSource의 schema(ddl scripts)를 생성한 다음, 초기 데이터를 생성(dml scripts)하기 위해서 schema.sql, data.sql 사용하도록 설정되어 있으며, 이는 spring.sql.init.platform 을 설정하여 변경하실 수도 있습니다. 기본적으로 JPA에서는 @Entity로 선언한 테이블을 생성 한 다음에,  초기 데이터를 저장하지 않기 때문에, data.sql이라는 파일을 classpath 로 지정된 곳에 생성하게 되면, 초기 부팅시 자동으로 데이터를 저장하게 됩니다. 

https://docs.spring.io/spring-boot/docs/current/reference/html/howto.html#howto.data-initialization

감사합니다.

정준상님의 프로필 이미지
정준상

작성한 질문수

질문하기