gpt4 book ai didi

Java:使用列表从持久性查询语言检索结果

转载 作者:行者123 更新时间:2023-11-30 05:00:15 26 4
gpt4 key购买 nike

我正在使用 JPQL 查询数据库,但无法使用列表检索“报告”表的行。这是我的代码的一部分:

...
EntityManagerFactory emf = Persistence.createEntityManagerFactory("hibernate");
EntityManager em = emf.createEntityManager();
EntityTransaction tx = em.getTransaction();
tx.begin();
Query query = em.createQuery("SELECT r.title, r.company FROM Report as r");
List<Report> itemList = query.getResultList();
for (Report item : itemList)
{
System.out.println("Item: " + item.getCompany());
}

输出为:

Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to maps.Report at hello.Test.main(Unknown Source)

Java 结果:1

我做错了什么?为什么我不被允许进行选角?

最佳答案

您的查询未选择报表的实例。它选择两个字段:r.titler.company。在本例中,JPA 返回 Object[] 列表。列表中的每个 Object[] 包含两个元素:标题和公司。

使用select r from Report r来选择Report实例。

关于Java:使用列表从持久性查询语言检索结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7011805/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com