본문 바로가기

JPA2

개발 일지 · 팁 JPA 연관관계를 안 쓰면 조회는 어떻게 하나 — FK 참조, QueryDSL on 조인, 애플리케이션 조립 지난 글(JPA 연관관계, 쓸까 말까 — @ManyToMany도 써도 될까?)에서 우리 팀이 객체 매핑을 거의 쓰지 않는 쪽으로 흘러왔다는 이야기를 했다. 그 글을 쓰고 나서 스스로 찜찜했던 부분이 하나 있었다. "안 쓴다"까지는 말했는데, "그럼 조회는 어떻게 하느냐"에 대한 답을 안 했다는 것이다.연관관계를 걷어내면 문제가 하나 생긴다. order.getCustomer().getName() 한 줄이면 끝나던 게 안 된다. 주문에서 고객 이름을 가져오려면 고객을 따로 조회해서 붙여야 한다. 이게 매번 불편하다면 그 컨벤션은 오래 못 간다. 실제로는 안 불편했으니 몇 년째 유지되고 있는 건데, 그 "안 불편한 방법"이 뭔지를 정리해 두려고 한다.이번에는 감이 아니라 코드를 직접 세어 봤다. 우리 팀이 운.. 2026. 8. 2.
백엔드 JPA 연관관계, 쓸까 말까 — @ManyToMany도 써도 될까? 우리 팀의 컨벤션은 객체 매핑(Object Mapping)을 거의 쓰지 않는 쪽으로 흘러왔다.@ManyToMany는 물론이고, 양방향 @OneToMany도 잘 쓰지 않는다. 심할 때는 "연관관계 매핑 자체를 최소화하자"는 분위기까지 간다.그래서 한 번 정리해두고 싶었다. JPA의 연관관계 매핑, 도대체 쓰는 게 맞을까 안 쓰는 게 맞을까?먼저 한 가지 사례부터 짚고 싶다. 우리 회사는 개발자 채용 사전 과제를 검토할 때, @ManyToMany를 그대로 쓴 코드에 감점을 주는 경우가 많다. 오해는 말자. 모든 회사가 그렇다는 이야기는 아니다. 세상엔 @ManyToMany를 자연스럽게 쓰는 팀도 많다. 다만 우리 팀 기준에서는, 실무에서 반복적으로 문제를 일으켜 온 매핑을 아무 고민 없이 썼다는 신호로 보기.. 2026. 7. 26.