강의

멘토링

커뮤니티

Inflearn Community Q&A

binni05153138's profile image
binni05153138

asked

Real-world! Spring Boot and JPA Utilization 1 - Web Application Development

Order, Order Item Entity Development

엔티티의 setter

Written on

·

401

1

1. 엔티티에서 setter는 지양하라고 말씀하셨는데

예를 들면 Order의 연관관계 메서드를 작성 시 OrderItem의 setter가 사용됩니다. 이 때 setter를 사용하지 않고 양방향 연관관계 세팅을 할 수 있는 방법이 무엇이 있을까요?

 

2. 양방향값 세팅은 양방향연관관계일 때 필수적인 건가요?

웹앱spring-bootspringJPAjava

Answer 1

1

안녕하세요. binni0515님, 공식 서포터즈 OMG입니다.

1.

setXX의 setter대신 의미있는 이름을 사용하면 됩니다.  아래 링크에서 영한님이 설명하시지만,

무분별한 setter의 사용을 지양하는 것일 뿐 양방향 연관관계 일때 억지로 푸는 것 보다 setter를 사용하는게 편한 상황이 있다고 하시니, 양방향 연관관계 맺기 위해 억지로 setter를 없애는 것 아닌가 싶은 경우에는 setter를 사용하셔도 될 것 같아요.

https://www.inflearn.com/questions/16235

2.

네 맞습니다.

가령 Team과 Team에 속한 선수가 있다고 가정하면(일대다 관계) 

Team에 속한 선수들의 관계는 맺었을 때, A라는 선수가 Team과의 관계가 맺어지지 않은 경우

참조가 불가능합니다. (Team은 A선수를 조회할 수 있지만, A에서 Team의 조회는 불가능)

양방향으로 참조해야 한다면(양방향 연관관계) 상호간 참조는 필수입니다.


감사합니다.

binni05153138's profile image
binni05153138

asked

Ask a question