Replies: 2 comments
-
✅ 왜 JPA 자동 쿼리만으로는 부족한가?1. 복잡한 조건 처리 불가
java
복사편집
// 안 되는 예시
List<Member> findByTeamNameAndAgeBetweenAndStatusAndCreatedDateBefore(...);
2. 동적 쿼리 작성 불가
java
복사편집
// name, age가 있을 수도 없을 수도 있는 경우 → QueryDSL 필요3. JOIN, GROUP BY, 서브쿼리 등 복잡한 SQL
java
복사편집
@Query("SELECT m FROM Member m JOIN m.team t WHERE t.name = :teamName")
List<Member> findByTeamName(@Param("teamName") String teamName);4. 성능 최적화가 필요한 경우
5. 복잡한 응답 DTO 매핑
java
복사편집
@Query("SELECT new com.example.MemberDto(m.id, m.name) FROM Member m")
List<MemberDto> findMemberDto();6. 비즈니스 로직이 유연해야 할 때
|
Beta Was this translation helpful? Give feedback.
-
🔹 Q1. JPA에서 자동 쿼리 메서드란 무엇인가요?✅ 답변 예시
🔹 Q2. 자동 쿼리는 편리한데, 왜 굳이 직접 쿼리를 작성하나요?✅ 답변 예시
🔹 Q3. 직접 쿼리를 작성하는 방식에는 어떤 것들이 있나요?✅ 답변 예시
🔹 Q4. QueryDSL을 실무에서 왜 사용하시나요?✅ 답변 예시
🔹 Q5. 동적 쿼리란 무엇이고, 왜 필요한가요?✅ 답변 예시
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
✅ JPA 쿼리 작성 방법 정리
📘 1. JPQL (Java Persistence Query Language)
Member는 엔티티 이름 기준 (테이블 아님)📘 2. Criteria API (JPA 표준, 자바 코드 기반)
📘 3. Native SQL (순수 SQL)
📘 4. Spring Data JPA + @query
nativeQuery = true로 SQL도 작성 가능📘 5. QueryDSL (가장 선호되는 방식)
Beta Was this translation helpful? Give feedback.
All reactions