JPA에서 기본 쿼리 결과를 POJO 컬렉션으로 변환
JPA를 사용하면 기본 SQL 쿼리를 실행하고 결과를 검색할 수 있습니다. 그러나 기본적으로 이러한 결과는 객체 배열로 반환됩니다. 특정 필드가 있는 POJO(Plain Old Java Objects) 컬렉션으로 변환하려는 경우 여러 가지 접근 방식을 사용할 수 있습니다.
매핑된 엔터티(JPA 2.0) 사용
JPA 2.0에서는 기본 쿼리를 JPA 엔터티에 매핑할 수 있습니다. 이는 결과를 나타내는 데 사용되는 POJO 클래스가 매핑된 엔터티여야 함을 의미합니다. 즉, 적절한 JPA 주석으로 주석이 추가되었음을 의미합니다. NamedNativeQuery 주석의 resultClass 속성을 사용하여 이 클래스를 지정할 수 있습니다.
수동 매핑
JPA 2.1 이전에는 수동 매핑 접근 방식이 사용되었습니다. 여기에는 기본 쿼리에서 반환된 튜플 배열을 POJO 클래스에 매핑하는 코드 작성이 포함되었습니다. 이 매핑은 리플렉션을 사용하여 수행할 수 있습니다.
@SqlResultSetMapping(JPA 2.1) 사용
JPA 2.1이 도입되면서 @SqlResultSetMapping 주석을 통해 기본 쿼리의 명시적인 매핑이 가능해졌습니다. POJO 클래스에 대한 결과입니다. 이 접근 방식에서는 POJO가 JPA 엔터티일 필요가 없습니다.
XML 매핑 사용
엔터티 내에서 명명된 쿼리를 선언하는 것이 바람직하지 않은 경우 대체 XML 매핑 접근 방식을 사용하세요. 사용할 수 있습니다. sql-result-set-mapping 요소는 META-INF/orm.xml 파일에 정의되어 기본 쿼리 결과를 특정 POJO 클래스에 매핑할 수 있습니다.
결론
JPA 버전과 프로젝트의 특정 요구 사항에 따라 기본 쿼리 결과를 POJO 컬렉션으로 변환하는 데 사용할 수 있는 여러 가지 방법이 있습니다. 접근 방식 선택은 JPA 호환성, POJO 클래스의 특성, 원하는 구성 수준과 같은 요소에 따라 달라집니다.
위 내용은 JPA에서 기본 쿼리 결과를 POJO 컬렉션으로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!