当我在 jpql/jpa 2.0 查询中指定列时,即 select p.id, p.lastName, p.firstName from Profile p where p.group = :group
我收到以下错误: [Ljava.lang.Object;无法转换为 com.profs.ws.Profile...
任何人都知道如何解决此转换问题?
Profile
实体类本身具有以下类型的属性:String、int 和 Collection
。我在查询中选择的属性是 String
或 int
类型。
最佳答案
当您指定对象的属性时,JPA 返回 Object[]
的列表.您可以将返回值转换为 List<Object[]
而不是 List<Profile>
避免 ClassCastException
.如果您使用 Hibernate 作为 JPA 提供者,您可以将 select 子句映射到一个新对象。参见 select clause有关详细信息的文档。
关于java - 在 jpql select 中指定列会导致转换错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4235573/