작성
·
393
0
앞전 강의에서 가능하면 엔티티는 setter를 열어놓지 말고 사용하라고 했습니다.
현재 제가 진행하고 있는 방향은
엔티티를 만들때 생성 메서드를 따로 만듭니다. (createMember)
그리고 엔티티안에 private로 생성자 함수를 만듭니다. + @Builder 어노테이션을 적용시킵니다.
그리고 생성 메서드에서 그 생성자함수를 빌더패턴으로 만들어서 사용하고 있습니다.
이렇게하면 실수로 엔티티를 만들거나, 엔티티의 값을 바꾸는일이 일어날 일이 없다 생각합니다. 혹시 괜찮은 방법인지 궁금합니다.
더불어
강의내용중 연관관계 메서드에서 엔티티의 setter를 사용하는데 이부분을 개선할 수 있는 방법이 있나요??
/* 연관관계 메서드 */
public void addOrderItem(OrderItem orderItem) {
orderItems.add(orderItem);
orderItem.setOrder(this);
}
답변 1
0
안녕하세요. 김진영님, 공식 서포터즈 David입니다.
.
객체 생성의 경우 정적팩토리 메서드나 빌더 둘 중 하나만 적용시켜도 충분합니다.
연관관계 편의메서드 내 setter 사용 유무에 대해서는 아래 글 답변을 참고해주세요.
https://www.inflearn.com/questions/16235
https://www.inflearn.com/questions/23891
.
감사합니다.