2014-11-04 2 views
0

JPA 기준 Union : 곧 JPA 표준에 포함됩니까? 연합이 중요합니다. 공용체의 경우, 내가 좋아하지 않는 원시 SQL을 사용해야합니다. 멀티 테넌트는 네이티브 SQL을 지원하지 않습니다. 기준 작성 도구에서 노동 조합을 지원하기위한 제안은 무엇입니까? 감사.JPA Criteria Union : JPA 표준이 적용됩니까?

답변

1

UNION은 전적으로 SQL 구문이며 어떤 방식 으로든 객체 기반이 아니므로 결과적으로 추가되지 않을 것이라고 생각합니다. 하지만 뭔가에 대해 충분히 생각한다면 메일 링리스트에 가서 https://java.net/projects/jpa-spec/lists 등의 정보를 포함시켜야하며, 무엇을 달성해야하는지 (예 :이 "질문"에서 언급 한 것보다 훨씬 많음)의 예를 포함시켜야한다고 제안합니다. 명백히 JPA 제공자는 사용자가 작성한 쿼리를 기반으로 발행하는 SQL에서 UNION을 암묵적으로 사용할 수 있습니다.

JPA의 일부가 아니기 때문에 다중 점유자가 어떤 일을해야하는지는 알지 못합니다.

+1

우리는 모든 데이터베이스에서 응용 프로그램을 이식 할 수 있도록 가능한 한 원시 SQL을 사용하지 않도록 노력합니다. JPA에서 UNION을 지원하는 것은 매우 쉽습니다. 나는 그것이 표준에없는 이유를 알지 못한다. UNION을 지원하는 이유는 UNION이 NATIVE SQL에서 지원되는 이유와 동일합니다. JPA는 NATIVE SQL의 맨 위에있는 Java API입니다. EclipseLink JPQL은 연합을 지원하며 조만간 Criteria API에 포함되기를 희망합니다. 누군가 eclipseLink에서 Criteria API를 사용하여 workaround UNION을 사용할 수 있는지 궁금합니다. – eastwater

+0

모든 JPQL 쿼리는 특정 엔터티 유형에 대한 쿼리이므로 "UNION을 지원하는 이유"는 분명 할 수 있지만 많은 쿼리가 아닙니다. 사례를 제시하려면 샘플 엔티티와 제안 된 JPQL 구문 및 예상 수익은 무엇이며 어떤 역할을하는지 예제를 제시해야합니다. 예, 피할 수있는 네이티브 SQL 부분을 얻었지만 그 자체로 JPQL에 무엇인가 넣는 것은 아닙니다. –