如何获得下面对象的[0],...,[4]参数的值?
您在下面看到的对象是EntityManager.createNativeQuery()的结果。 我想使用这些值来创建POJO。我知道我可以使用EntityManager.createNativeQuery(“SQL Query”,MyPOJO.class),但它只返回带有ID的POJO,其他所有变量都是空的?!我对如何获取对象的参数很感兴趣。
无法将返回的对象强制转换为MyPOJO,因为MyPOJO是一个JPA实体,引用了另一个JPA实体,返回的对象只包含另一个JPA实体的ID。
谢谢!
答案 0 :(得分:0)
我通过以下方式解决了这个问题:
让nativeQuery将结果作为Object []列表返回给我,并通过索引访问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];
...
...
}