0
JPA 2.1では、JPQLクエリの結果をカスタムPOJOオブジェクトに変換する必要があります。JPA Transformer for JPQLクエリ結果
私は以下の解決策を認識していますが、はにネイティブSQLクエリがないので使用できません。
私のDAOクラスで次に@Entity
@Table("USER_T")
@SqlResultSetMapping(name="SearchResult", classes = {
@ConstructorResult(targetClass = InternalUser.class,
columns = {@ColumnResult(name="userId"), @ColumnResult(name="firstName"),
@ColumnResult(name="lastName"), @ColumnResult(name="role")
})
})
、
javax.persistence.Query query = entityManager.createNativeQuery(jpql, "SearchResult");
私はこのアプローチをとることにした場合jpql
変数がネイティブSQLではないので、私はSQL例外になるだろう。これにはJPQL式が含まれており、Where句やOrder-Byでカスタムフィールドを指定するなどの「エキストラ」を使用できます。
createNativeQuery(strQuery, strMapping)
の代わりにcreateQuery(strQuery, strMapping)
が必要ですが、それは存在しません。助言がありますか?結果をカスタムPOJOに変換する必要があります。 JB Nizetの先端パー
'select新しいSearchResult(...)から'を追加しました。 –
ありがとう、構文は、 'select new(..)'の結果のClassNameでした –