【问题标题】:extract Object parameters to POJO将 Object 参数提取到 POJO
【发布时间】:2015-02-10 21:37:28
【问题描述】:

如何获取下面 Object 的 [0], ..., [4] 参数值?

您在下面看到的对象是 EntityManager.createNativeQuery() 的结果。 我想使用这些值来创建 POJO。我知道我可以使用 EntityManager.createNativeQuery("SQL Query", MyPOJO.class),但它只返回带有 ID 的 POJO,所有其他变量都为空?!我对如何获取对象的参数很感兴趣。

不可能将返回的对象强制转换为 MyPOJO,因为 MyPOJO 是一个 JPA 实体,它引用了另一个 JPA 实体,并且返回的对象只包含另一个 JPA 实体的 ID。

谢谢!

【问题讨论】:

  • 在实体上创建命名查询,然后使用 EntityManager.createNamedQuery("queryName");它返回一个 POJO 类
  • 谢谢,但这不是我要的,我需要使用createNativeQuery();。

标签: java jpa


【解决方案1】:

我通过以下方式解决了它:

让 nativeQuery 将结果作为 Object[] 列表返回给我,并通过索引访问对象的值。

这是我的解决方案:

List<Object[]> executeObjects = null;
Query query = mgr.createNativeQuery("SQL Query");
executeObjects = (List<Object[]>) query.getResultList();

for (Object[] object : executeObjects) {
    Long id = new Long((Integer) object[0]);
    Long id2 = new Long((Integer) object[1]);
    String desc = (String) object[2];
    ...
    ...
}

【讨论】:

    猜你喜欢
    • 2023-03-02
    • 2023-01-15
    • 1970-01-01
    • 1970-01-01
    • 2015-07-01
    • 2018-08-29
    • 1970-01-01
    • 2013-01-23
    • 1970-01-01
    相关资源
    最近更新 更多