프로젝트를 진행하면서 오해했던 @ColumnDefault 어노테이션에 대해 정리해 작성해보려한다.
팀원들이 여러 필드들에 @ColumnDefault 어노테이션을 사용하는 것을 보면서 DB에 DDL로 설정한 default값으로 초기 값을 넣어주는데 왜 작성하지 하는 생각을 갖고 있다가 첫번째 문제가 발생했었다.
그러다가 오늘 pr리뷰를 받았는데 @ColumnDefault 어노테이션을 추가해달라는 요청을 받았고 나는 DB에 default값으로 초기 값을 넣어주는데 왜 작성을 하는지에 대해 물어보았다.
답변으로 한 [1]블로그 링크를 달아주셨다.
블로그 글을 읽어보니 application.yml의 내용을 jpa.hibernate.ddl-auto : create 또는 create-drop으로 설정하여 새로운 테이블을 만들 때 Column의 기본값을 설정해주는 역할을 하는 것을 알게 되었다.