【发布时间】:2012-05-08 09:20:40
【问题描述】:
我正在使用ireport-4.5.0,spring3.0.5RELEASE,jpa2。我有一个名为 User 的实体类,其属性如下
用户身份,
用户名,
密码.I
通过将字段指定为这三个属性名称来设计 jrxml。如果我将 jpa 查询指定为 From USer,那么它可以正常工作并给出结果。但我想要用户名的不同值(用户名列也允许重复值)所以我将 jpaQuery 作为
SELECT userId,DISTINCT(userName),password FROM User
然后我没有得到结果。查询有什么问题。
您好,我正在提供我正在使用的代码
public User getUsers() throws Exception{
Query uQuery = entityManager.createQuery("SELECT u.userId,u.userName,u.password FROM User u GROUP BY u.userId,u.userName,u.password");
List <User>listOfUsers = uQuery.getResultList();
if (listOfUsers == null) {
throw new ResourceNotFound();
}
for (Iterator iterator = listOfUsers.iterator(); iterator.hasNext();) {
User userList = (User)iterator.next();
}
return userList;
这里我得到了 ClassCastException:java.lang.String 无法转换为 User。它在 for 循环语句中显示了这个异常。我是 JPA 的新手。您能否解释一下如何迭代该对象列表。
【问题讨论】:
-
谁能给我答案,这对我来说非常紧急。
-
类似,可以参考stackoverflow.com/a/4536802/366964获取选中的属性。
标签: java jpa jasper-reports