| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- blockingqueue
- 메시지브로커
- 데이터유실방지
- 메세지브로커
- god object
- rdb
- 자연어캐싱
- retry
- 임베딩
- 레디스스트림
- 마케팅 #퍼플카우 #새스고딘 #혁신 #독서 #이북
- jedis
- 테스트코드
- 코사인
- 레디스
- 장애복구
- redis
- OOP
- 객체지향적사고
- SaaS
- redissearch
- Kafka
- 배치처리
- 백엔드
- 비동기처리
- DLT
- redisstreams
- 시맨틱캐싱
- springboot
- aof
Archives
- Today
- Total
목록2025/11/20 (1)
pandaterry's 개발로그
JPA와 도메인 모델: 복잡한 조회 쿼리의 딜레마와 실전 해결책
JPA와 도메인 모델을 함께 사용하면서 객체지향적으로 설계하다 보면, 조회 쿼리가 복잡해지는 문제에 직면하게 됩니다. 특히 페이지네이션이 필요할 정도의 복잡한 조회에서는 이 문제가 더욱 두드러집니다. 이는 해외 스프링부트 및 자바 커뮤니티에서도 오래 논의된 주제입니다. 실무에서 겪는 문제들 객체지향과 SQL의 근본적 불일치도메인 모델은 비즈니스 로직과 불변성 보장을 위해 풍부한 연관관계를 가져야 합니다. 하지만 이는 조회 쿼리를 복잡하게 만듭니다. JPA는 CRUD 보일러플레이트를 피할 뿐만 아니라 관리되는 엔티티에서 작업할 때 대부분의 수동 레포지토리 호출을 피할 수 있게 해줍니다. 하지만 동작이 신비롭게 느껴질 수 있으며, 쓰기에는 편리하지만 읽기에는 제어권이 부족한 것이 문제입니다. N+1 문제연관..
개발/OOP
2025. 11. 20. 23:45