[JPA] 객체지향 쿼리 언어 - 1 JPA는 다양한 쿼리 방법을 지원한다. - JPQL *** - JPA Criteria (이거 대신 QueryDSL 사용 권장) - QueryDSL - 네이티브 SQL - JDBC API 직접 사용, MyBatis, SpringJdbcTemplate 함께 사용 JPQL 가장 단순한 조회 방법이다. JPA를 사용하면 엔터티 객체를 중심으로 개발 가능하고, 문제는 검색 쿼리이다.
검색을 할 때 테이블이 아닌 엔터티 객체를 대상으로 검색해야한다. 모든 DB 데이터를 객체로 변환해서 검색하는 것은 불가능하다.
애플리케이션이 필요한 데이터만 DB에서 불러오려면 결국 검색 조건이 포함된 SQL이 필요하다. JPA는 SQL을 추상화하는 JPQL이라는 객체 지향 쿼리 언어를 제공한다. -> SQL 과 문법 유사, SELECT, FROM, WHERE, GRUOP BY, HAVING, JOIN 지원 -> JPQL은 엔터티 객체를 대상으로 쿼리 -> SQL은 데이터베...