게시글
스터디
모집완료
2023.07.26 20:41
데이터 중심 애플리케이션 설계 독서 스터디
- 1
- 1
- 493
질문&답변
2022.03.29
Optional 적용 문제
답변 감사드립니다! Optional에서 값을 꺼내는 것과 별개로 서비스단의 followFriend 메서드에서 Oprtional receiver = memberRepository.findByEmail(request.getReceiverEmail()); 와 같이 해당 이메일에 해당하는 Member 객체를 가져왔고 메서드의 마지막에서 relationRepository.save(new Relation(requester, Optional receiver)); 와 같이 Relation 객체를 생성해서 DB에 저장해 주는 코드를 작성하였습니다. Optional로 감싸서 조회하였기 때문에 생성자 매개변수 receiver 또한 Optional로 감싸주게 되었고 이렇게 되면 Relation 객체의 friend 필드에도 Optional을 선언해 줘야했습니다. @Entity @Getterpublic class Relation extends BaseEntity { @ManyToOne(fetch = LAZY) @JoinColumn(name = "member_id") private Member owner; @ManyToOne(fetch = LAZY) @JoinColumn(name = "friend_id") private OptionalMember> friend; protected Relation() {} public Relation(Member owner, Optional friend) { this.owner = owner; this.friend = friend; }...} 이런식으로 엔티티가 설계되는 것이 옳은 방식인지 궁금합니다.
- 1
- 2
- 1.2K