팀과 맴버 엔티티가 일대다 관계일때
팀을 삭제하면 맴버 엔티티도 다 삭제했으면 좋겠어서
orphan removal 조건을 쓸려고하는데 그러면
팀 조회하고 맴버 삭제 팀삭제 이렇게 커리가 나가는데
jpql로 바로 쿼리 날리면 팀 조회 커리 없이
맴버 삭제 팀삭제 이렇게 쿼리 한개를 아낄수 있는데
뭐가 더 나은 선택일까?
팀을 삭제하면 맴버 엔티티도 다 삭제했으면 좋겠어서
orphan removal 조건을 쓸려고하는데 그러면
팀 조회하고 맴버 삭제 팀삭제 이렇게 커리가 나가는데
jpql로 바로 쿼리 날리면 팀 조회 커리 없이
맴버 삭제 팀삭제 이렇게 쿼리 한개를 아낄수 있는데
뭐가 더 나은 선택일까?
당연히 성능상 조회없이 바로삭제하는것이 이득임 jpa류같이 자동생성 쿼리는 퍼포먼스를 포기하고 생산성(코드최소화)에 초점을 둔 것들이지
그래서 고민임 직접 쿼리를 날리는게 좋은데 문제는 erd가 복잡해지는 순간 사람이 저걸 일일히 관리가 될지 그럼 jpa를 쓰는게 더 나을텐데 니생각은 어떰 jpa를 써서 생산성에 초첨을 맞출건지 jpql로 성능을 챙길건지
섞어쓰면됨 ㅇㅅㅇ 간단한건 jpa고 결국 어느정도 복잡해지면 sql을 쓸수밖에없음 참고로 본인은 가짜sql인 jpql을 혐오함
jpql이나 그냥 sql이랑 그게 그거던데 왜 안좋아함??
미묘하게 다름 자유도가 sql이 더 낳음 sql이 지원하는 함수들 jpql에서쓰면 에러나는 경우가 많음
걍 jpa써 팀이 많아봣자 얼마나 많겠음
팀이 많은게 아니라 한번 select조회할때 너무 많이조회되니까 그냥 쓸데없는 걱정이긴함
근데 궁금한게 팀을 조회한다는게 뭐임? 멤버 삭제, 팀 삭제로 충분한거 같은데. 어떻게 생긴 쿼리임?
jpa를 이용해서 삭제할려면 먼저 조회를 한번해서 영속성 컨텍스트에 놓고 삭제가 되지 않냐? 그래서 조회한다 한건데