[Spring]SQL script 활용한 DB 초기화

콩심은데콩남·2023년 10월 6일
post-thumbnail

유튜브 클론 코딩 중 카테고리를 선택 했을 때 해당 카테고리에 맞는 영상이 출력되는 것을 구현하기 위해 DB에 키워드 데이터를 저장 후, 영상의 제목이나, 설명에 해당하는 키워드가 존재하는 경우 키워드 데이터가 Join 하는 카테고리를 선택 시 리스트를 출력하는 방식으로 구현해보았다. 매번 초기화 스크립트를 한번 만들어 놓으면 편하기 때문에 한번 만들어 봤다.

application.yml 설정

spring:
  sql:
    init:
      mode: always
      schema-locations:
        - classpath:category.sql
        - classpath:keyword.sql

mode

  • alway : 모든 데이터를 대상으로 초기화 스크립트를 동작시킨다. 테스트용이 아닌 DB에 대해서 특히 유의 해야 한다.
  • embedded : embedded 데이터베이스만 초기화 시킨다.
  • never : 초기화를 사용하지 않는다.

category.sql , keyword.sql 파일을 resources 경로에 위치시킨다.


INSERT INTO categoryentity (name) VALUES ('게임');
INSERT INTO categoryentity (name) VALUES ('음악');
INSERT INTO categoryentity (name) VALUES ('요리');
INSERT INTO categoryentity (name) VALUES ('스포츠');
INSERT INTO categoryentity (name) VALUES ('학습');
INSERT INTO categoryentity (name) VALUES ('영화');
INSERT INTO keywordentity (keyword, categorySeq) VALUES ('게임', 1);
INSERT INTO keywordentity (keyword, categorySeq) VALUES ('PlayStation(플레이스테이션)', 1);
INSERT INTO keywordentity (keyword, categorySeq) VALUES ('Xbox(엑스박스)', 1);
... 
profile
코딩 손실을 막기 위한 재활 센터

0개의 댓글