14

以下のコードを使用すると、クエリの結果を取得できません。使用してMap<ContentType...Map<String...同じエラーが発生しても、 javax.persistence.NonUniqueResultException: result returns more than one elements

JPAはリポジトリで複数の行を処理できるはずです。見逃している可能性のある他の注釈を探してみましたが、結果を出すのに苦労しています。

これを解決するために何をすべきかについての提案はありますか?

@Transactional
public interface ContentRepository extends JpaRepository<Content,Integer>{

    ....

    @Query(nativeQuery=true, value="SELECT content_type, COUNT(*) AS myColumn FROM dbo.content GROUP BY content_type")
    Map<ContentType, Integer> getContentCountByType();

}
4

2 に答える 2

8

問題はMap<ContentType, Integer>、一意のインデックスの約束がないことだったようです。そのため、JPA はそれにマッピングすることを好みません。List<Map<ContentType, Integer>>代わりに使用することで、うまく機能します!

于 2012-09-05T15:16:46.573 に答える