쿼리, 네이티브 쿼리, 명명 된 쿼리 및 입력 된 쿼리의 차이점
쿼리, 네이티브 쿼리, 명명 된 쿼리 및 형식화 된 쿼리의 차이점은 무엇입니까? '독립형'쿼리가 존재합니까, 아니면 약어입니까? 내 생각에 네이티브 쿼리는 간단한 SQL로 작성된 쿼리 인 반면 명명 된 쿼리는 엔터티 (최대 절전 매핑)와 관련됩니다. 누군가 이것을 간단히 설명 할 수 있습니까?
질문
Query는 일반적으로 DML 문 (CRUD 연산)을 실행하는 데 사용되는 SQL과 유사한 구문의 JPQL / HQL 쿼리를 말합니다.
JPA에서는 entityManager.createQuery()
. 자세한 내용 은 API 를 살펴볼 수 있습니다 .
Hibernate에서는 session.createQuery()
"
NativeQuery
네이티브 쿼리는 실제 SQL 쿼리 (실제 데이터베이스 개체 참조)를 나타냅니다. 이러한 쿼리는 데이터베이스 클라이언트를 사용하여 데이터베이스에서 직접 실행할 수있는 SQL 문입니다.
JPA : entityManager.createNativeQuery()
Hibernate (비 JPA 구현) :session.createSQLQuery()
NamedQuery
상수가 정의되는 방식과 유사합니다. NamedQuery는 이름을 지정하여 쿼리를 정의하는 방법입니다. 이를 최대 절전 모드의 매핑 파일에서 정의하거나 엔티티 수준에서 주석을 사용하여 정의 할 수 있습니다.
TypedQuery
TypedQuery는 쿼리를 만들 때 엔터티 유형을 언급 할 수있는 옵션을 제공하므로 이후의 모든 작업에는 의도 한 유형에 대한 명시 적 캐스트가 필요하지 않습니다. 일반 Query
API는 예상 한 정확한 유형의 Object를 반환하지 않으며 캐스팅해야합니다.
'Programing' 카테고리의 다른 글
무엇을 (0) | 2020.12.13 |
---|---|
잠금 내부 잠금 (0) | 2020.12.13 |
HTML5` (0) | 2020.12.13 |
Pandas 데이터 프레임에 열로 numpy 배열 추가 (0) | 2020.12.13 |
헤 로쿠에 밀 수 없다 (0) | 2020.12.13 |