JPA自定义拼装sql语句(左外连接)查询,将查询结果集保存至List<Object>或者List<Map>中
①查询的结果集保存为List<Object>:
Query query = getEntityManager().createNativeQuery(sql);
List rows = query.getResultList();
for (Object row : rows) {
Object[] cells = (Object[]) row;
System.out.println(cells[0]);
System.out.println(cells[1]);
System.out.println(cells[2]);
System.out.println(cells[3]);
}
②查询的结果集保存为List<Map<String, Object>>:
Query query = getEntityManager().createNativeQuery(sql);
query.unwrap(NativeQueryImpl.class)
.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);
List<Map<String,Object>> result= query.getResultList();