当前位置: 首页 > 面试题库 >

将Hibernate结果转换为对象列表

郑景胜
2023-03-14
问题内容

我的DAO中有一个hibernate的呼叫,看起来像这样

List<Associate> associate = (List<Associate>)session.createSQLQuery("SELECT * FROM associates WHERE fk_id = :id AND fk_associate_id = (SELECT id FROM users WHERE fk_user_type = 2)").setParameter("id", id).list();

我收到一条错误消息,说我无法将结果列表转换为模型类型“关联”。我不明白为什么会这样。我只返回关联表中的字段。


问题答案:

您需要使用来指定要转换为结果的实体类addEntity(),因为您正在执行对实体一无所知的SQL查询:

List<Associate> associate = (List<Associate>) session.createSQLQuery(
    "SELECT * FROM associates WHERE fk_id = :id AND fk_associate_id = (SELECT id FROM users WHERE fk_user_type = 2)")
    .addEntity(Associate.class)
    .setParameter("id", id).list();

也可以看看:

  • 18.1.2。实体查询


 类似资料:
  • 问题内容: 我是python的初学者。我想将sql结果转换为列表。这是我的代码: 我的表中有6列,但是此代码不会创建6元素列表。我在哪里做错了? 问题答案: 如果你有一个迭代在Python,做一个列表,可以简单地调用了内置: 请注意,可迭代项通常与列表一样有用,并且可能会变得更懒惰,因此效率更高。 您的原始代码失败了,因为它没有太多意义。您遍历行并枚举它们,这样就得到等等…-这意味着您正在建立第n

  • 问题内容: Json字符串: C#类: C#将json转换为电影的c#列表: 我的变量最终是一个计数为0的空列表。我是否缺少某些内容? 问题答案: 您的C#类映射与json结构不匹配。 解决方案:

  • 我已经看到,当我们使用或时,JOOQ可以自动返回POJO 但是有可能将复杂查询的结果转换成多个POJO吗? 我测试了方法,它工作得很好。但我没有支持对象。

  • 问题内容: 我有一个JSON对象,我将其转换为并在此处进行一些处理。稍后,我想转换相同的缓冲区数据以转换为有效的JSON对象。 我正在研究Node V6.9.1 下面是我尝试过的代码,但是当我转换回JSON却无法打开该对象时遇到了。 所以我尝试使用检查方式打印整个对象 如果我尝试像数组一样读取它 我也尝试解析它抛出 我需要将其视为我创建的真实对象(我的意思是像上面声明的那样)。 请帮忙.. 问题答

  • 我正试图将下面的json转换成java bean,需要你的帮助 Sort.json 我的豆子看起来像 我的测试课是 我看到的错误是 请建议:

  • 问题内容: 我从服务器得到一个 json数组: 我想使用gson将上面的json数据转换为Java 对象。我尝试了以下方法: 首先,我创建了一个 Person.java 类: 然后,在服务类中,我执行了以下操作: 我收到异常 java.lang.ClassCastException:java.util.LinkedHashMap无法强制转换为Person 。如何摆脱我的问题?我只想将json数组转