일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 뮤텍스
- 이펙티브 자바
- 디지털
- 스터디
- 신입사원
- 깃허브
- spring
- package-private
- IT
- 컴퓨터과학
- 컴퓨터공학
- CS
- 정보처리기사
- 우리카드
- 운영체제
- 개발
- 프로그래밍
- github
- 공채
- OS
- 신입
- Effective Java
- 깃
- 자바
- 알고리즘
- Public
- 스프링
- 메모리
- 세마포어
- java
Archives
- Today
- Total
목록Spring/참고 (1)
주니어 개발자 성장기
(22.11.25) 엔티티 설계 시 주의점
엔티티에는 가급적 Setter를 사용하지 말자 Setter가 모두 열려있으면, 변경 포인트가 너무 많아서, 유지보수가 어렵다! 모든 연관관계는 지연로딩으로 설정! (중요) 즉시로딩 (EAGER)은 예측이 어렵고, 어떤 SQL이 실행될지 추적하기 어렵다. 특히 JPQL을 실행할 때 N+1 문제가 자주 발생한다. 실무에서 모든 연관관계는 지연로딩(LAZY)으로 설정해야 한다! 연관된 엔티티를 함께 DB에서 조회해야 하면, fetch join 또는 엔티티 그래프 기능을 사용한다. @XToOne(OneToOne, ManyToOne) 관계는 기본이 즉시 로딩이므로 직접 지연로딩으로 설정해야 한다. 컬렉션은 필드에서 초기화 하자. 컬렉션은 필드에서 바로 초기화하는 것이 안전하다. null 문제에서 안전하다. 하이버..
Spring/참고
2022. 11. 25. 19:58