해결된 질문
작성
·
421
답변 1
1
안녕하세요. 김민지님, 공식 서포터즈 y2gcoder입니다.
@Column 애노테이션은 특성 상 데이터베이스 테이블의 해당 컬럼에 대한 정보에 대한 표시를 해주는 측면도 있습니다. 데이터베이스 테이블의 조건이 not null이기 때문에 우리 애플리케이션에서도 해당 컬럼의 not null 조건을 표시해주는 게 좋습니다. 이것은 명확하다는 측면에서 이점이 있습니다.
예를 들어 엔티티에는 int로 되어 있었고, int에는 null이 들어갈 수 없으니까 nullable 조건을 빼주었다고 가정하겠습니다. 추후에 다른 사람이 요구사항 등으로 해당 엔티티를 수정할 일이 생겼습니다. 그때 int 타입으로 되어있는 column에서 타입을 편의를 위해 Integer로 바꾸었다고 가정하면, 말씀하신 nullable 조건을 명시해주지 않았던 것이 원인으로 장애가 발생할 수도 있습니다. 바꾸는 사람은 해당 컬럼이 nullable하다고 생각하고 코드를 변경할 것이기 때문입니다.
혼자 하는 게 아닌, 다른 사람과 일하는 경우가 많은 개발자로서 명확한 코드를 짜는 게 중요하다고 생각합니다.
감사합니다.