강의

멘토링

로드맵

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

HAHA님의 프로필 이미지
HAHA

작성한 질문수

멀티 모듈 아키텍처로 구현하는 은행 서버 핵심 기능 [ Kotlin & Spring ]

Entity & DTO 데이터 모델

jpa entity 질문

작성

·

13

0

안녕하세요.

 

Entity 선언 시 data class vs class 질문드리려고 합니다.

아래 질문은 data class를 기반으로 했지만 사실 궁금증 시작은 "class가 엔티티에 더 맞지 않나?" 라는 생각에 질문드립니다.

 

질문 1. data class 선언시 프록시 질문

제가 알기로 ManyToOne lazy loading할 때 프록시 기능을 사용한다고 알고 있습니다.

data class가 자바 record와 마찬가지 final인 것으로 아는데 그렇다면 지연 로딩이 정상적으로 동작하지 않다고 생각됩니다.

혹시 여기서는 지연 로딩을 사용하지 않아서 data class를 사용하신 것인지 궁금합니다.

 

질문 2. data class 사용이 맞다면 equals & hashCode 질문

결궁 두 값 동일성을 비교할 때 id를 기반으로 하는 것이 성능에 좋을 것 같다고 생각됩니다.

혹시 실무에서 data class 나 class 사용하실 때 id기반으로 equals와 hashCode를 오버라이딩 하지 않고 전체 필드로 하시는지 궁금합니다.

 

질문 3. data class 목적

제가 알기로는 data class는 response와 같이 불변 데이터에 많이 쓰이는걸로 알고 있습니다.

그래서 copy와 같은 메서드를 제공하는 것으로 알고 있습니다.

data class를 사용할 때 물론 copy를 사용하시진 않겠지만 영속성 컨텍스트 같은 기능을 쓰려면 직접 변경해야 합니다.

불변 클래스 목적과 jpa entity와 잘 맞지 않는 것 같아서 질문드립니다.

 

질문 4. equlas 질문

만약 양방향 참조가 있는 entity라면 무한 루프에 빠질 가능성이 없는지 궁금합니다.

이와 같은 이유로 2번을 질문 드렸는데 질문 2번에서 내용이 빠진 것 같아서 따로 한 번 더 질문 드립니다.

 

제가 실무에서 써보지 않았고 코틀린 관련해서는 경험이 부족해서 잘못된 질문이 있다면 알려주시면 다시 질문 남기겠습니다.

 

좋은 강의 감사합니다.

감사합니다.

답변

답변을 기다리고 있는 질문이에요
첫번째 답변을 남겨보세요!
HAHA님의 프로필 이미지
HAHA

작성한 질문수

질문하기