엔티티 설계 주의점

정하윤·2023년 9월 1일
0

엔티티 설계시 주의점

1. 가급적 Setter 사용하지 않기

  • 변경 포인트가 너무 많아서, 유지보수가 어렵다.

2. 모든 연관관계는 지연로딩으로 설정

  • 즉시로딩은 예측이 어렵고, 어떤 SQL이 실행될지 추적하기 어렵다
  • 실무에서 모든 연관관계는 지연로딩(LAZY)로 설정해야 한다.
  • 연관된 엔티티를 함께 DB에서 조회해야 하면, fetch join또는 엔티티 그래프 기능을 사용한다.
  • @XToOne(OneToOne, ManyToOne)관계는 기본이 즉시로딩이므로 직접 지연로딩을 설정해야 한다.

3. 컬렉션은 필드에서 초기화 하자

  • 컬렉션은 필드에서 바로 초기화 하는 것이 안전하므로 필드에서 초기화 하는 것이 좋다.
  • null문제에서 안전하고 코드도 간결해진다.

0개의 댓글