java - 无法从数据库 hql 检索项目

标签 java hibernate

有这个代码:

Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
Query query = session.createQuery("from DBUser where id=1");
    for(Iterator it=query.iterate();it.hasNext();){
    Object[] row = (Object[]) it.next();
    System.out.println("ID: " + row[0]);
    System.out.println("Name: " + row[1]);
    System.out.println("Amount: " + row[2]);
}

发生错误:java.lang.ClassCastException:com.mycompany.app.DBUser 无法转换为 [Ljava.lang.Object;

可能有更简单的方法来从表中检索单个元素?

最佳答案

hql 在这种情况下返回映射类型。您的代码应如下所示:

Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
Query query = session.createQuery("from DBUser where id=1");
    for(Iterator it=query.iterate();it.hasNext();){
    DBUser row = (DBUser) it.next();
    System.out.println("ID: " + row.getId());
    System.out.println("Name: " + row.getName());
    System.out.println("Amount: " + row.getAmount());
}

关于java - 无法从数据库 hql 检索项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12719999/

相关文章:

java - 如何正确测试Hibernate长度限制?

hibernate - 删除同一类中的@Entity 和@MappedSuperclass

java - spring、hibernate、log4j 用于集中错误捕获

hibernate - 如何在HQL中进行Union SQL语句?

java - 获取图像周围的像素颜色

java jackson json 处理器 - 在 Android 上的 RestTemplate 中使用和自动类型转换

java - jar 与 .java 文件的使用以及编译器的奇怪行为

java - Hibernate:Query By Example 等效于关联条件查询

java - 为什么我坚持了却没有任何反应?

java - 如何使用 JSOUP 从网站中提取正文并排除存档和链接到其他网页