JPA는 다양한 쿼리 방법을 지원
- JPQL
- JPA Criteria
- QueryDSL
- 네이티브 SQL
- JDBC API 직접 사용, MyBatis, SpringJdbcTemplate 함께 사용
대부분 JPQL로 해결이 된다.
JPQL 소개
- 엔티티 객체를 중심으로 개발
- 문제는 검색 쿼리
- 테이블이 아닌 엔티티 객체를 대상으로 검색
- 결국 검색 조건이 포함된 SQL이 필요
JPQL
em.createQuery(
"select m from Member m where m.username like '%kim%'",
Member.class
).getResultList();
