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

tk5641님의 프로필 이미지
tk5641

작성한 질문수

자바 ORM 표준 JPA 프로그래밍 - 기본편

데이터베이스 스키마 자동 생성

DDL 제약조건 명시여부

작성

·

346

3

안녕하세요. 강의내용듣다가 궁금한 점이 생겨 질문드립니다^^

예를들어, JPA의 DDL 자동생성 기능을 이용하지않고

flyway 같은 데이터베이스 migration 관리 툴로 스키마를 관리하는 상황에서,

 name컬럼이 unique 제약조건이 걸려있을때

실무에서는 해당 필드의 어노테이션으로 unique true나 길이제한 같은 제약을 보통 명시해주나요?

아니면 DDL 자동생성을 이용하지 않는상황에서는 딱히 명시해주지 않는 경우가 많나요?

답변 2

1

tk5641님의 프로필 이미지
tk5641
질문자

답변 감사합니다 ㅎㅎ. DDL 자동생성을 안쓰는 상황에서도, index 같은경우 명시해주면 확실하게 해당컬럼에 index가 걸려있다는걸 인지시켜줄 수 있겠네요. 감사합니다!

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. tk5641님^^ 좋은 질문입니다.

저는 가급적 엔티티만 보고 많은 것을 판단할 수 있도록 중요한 부분들을 엔티티에 직접 표기해두는 방법을 선호합니다.

특히 unique 제약조건이나, index 같은 부분은 필수로 표기합니다. 그래야 jpql을 작성할 때 엔티티만 봐도 index를 어떻게 타야 할지 개발자가 인지할 수 있기 때문입니다.

그런 이유로 컬럼의 길이도 다 명기하면 좋겠지만, 그러면 애노테이션이 너무 지저분해져서, 사실 저는 컬럼의 길이는 특별히 강조할 필요가 없는 경우 엔티티에서 따로 표기하지는 않습니다^^

도움이 되셨길 바래요

tk5641님의 프로필 이미지
tk5641

작성한 질문수

질문하기