-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
UserLoanHistory.bookName의 nullability
22.08.29 02:21 작성 조회수 238
1
Book.name
에 @Column(nullable = false)
을 붙였으니 UserLoanHistory.bookName
도 논리적으로 null이 될 수 없는데요. 그래서 bookName
에는 애노테이션을 붙이지 않으신 건가요? 애노테이션을 붙여서 DDL에 물리적으로 not null을 설정해야 하는 게 아닌가 싶어 질문 드립니다.
실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
13강. 도메인 계층을 Kotlin으로 변경하기 - UserLoanHistory.java, User.java
강의실 바로가기
답변을 작성해보세요.
0
최태현
지식공유자2022.08.29
안녕하세요! silvermanseoul님!! 크으~~ 날카로우십니다 😊 ㅎㅎㅎㅎ
Java 코드를 기준으로 설명 드려 보자면, 말씀해주신것처럼 엄밀히는 @Column(nullable = flase)
를 붙여야 null이 될 수 없음이 맞습니다!!! 다만, 추측해주셨다 시피 현재 구현되어 있는 (Java 기준) Service 로직상 null이 들어갈 수는 없어, 강의에서 'null이 들어갈 수는 없다'고 표현하였습니다!!!
추가로, 아시다시피 Kotlin에서는 val bookName: String 이라고만 작성하더라도 자동생성된 DDL에서 not null 제약조건이 붙어 있게 됩니다!!
혹시나 보시다가 궁금한 점 또 생기시면 언제든 편하게 질문 남겨주세요~! 감사합니다!!! 🙏
답변 1