jpa 쓰면 장점 = findById 같은거 미리 만들어져 있음

그리고 findByFoodOrderById 이런 식으로 만드는 쿼리문도 자동으로 해석해줌


단, 검색 쿼리가 좀 복잡하다?


그럼 얄짤없이 @Query로 JPQL 짜는게 맞고,

성능을 조금이라도 최적화하고싶다, 그러면 결국 nativeQuery 써야함


두 번 째 문제는 쿼리 메소드를 지원하더라도 길이가 지나치게 길어져서 가독성이 떨어지는 경우.

그리고 상황에 따라 너무나 다양한 쿼리를 일일히 짜줘야 하는데 그것도 문제고

작성 시에 문제를 찾기 힘들어서 돌려봐야하는 번거로움이 있음


그럴 때는 Querydsl을 써서 동적쿼리를 만들면 ide 지원도 받을 수 있어서 편함



근데 저 개인적으로는 솔직히 Querydsl 별로더라구요

일단 적용 절차가 있는데다가 쿼리문 배워보시면 알겠지만 차라리 쿼리문 짜는게 훨씬 더 직관적이라고 느꼈습니다