Java 迭代SQL JPA本机查询的结果时出现问题
我正在迭代从本机SQL查询获得的对象,以便能够打印一个实体的属性。对于此提议,我使用以下代码:Java 迭代SQL JPA本机查询的结果时出现问题,java,sql,jpa,Java,Sql,Jpa,我正在迭代从本机SQL查询获得的对象,以便能够打印一个实体的属性。对于此提议,我使用以下代码: public<T> ArrayList exectuteStoreProcedure(String sqlQuery){ setEntities(); int colcount = 0; int rowcount = 0; int rowcounter = 0; ArrayList a = new ArrayList(); try{
public<T> ArrayList exectuteStoreProcedure(String sqlQuery){
setEntities();
int colcount = 0;
int rowcount = 0;
int rowcounter = 0;
ArrayList a = new ArrayList();
try{
Query query = em.createNativeQuery(sqlQuery);
rowcount = query.getResultList().size();
colcount = ((Class[]) query.getResultList().get(0)).length;
String [][] array = new String [rowcount][colcount];
for (Iterator<String[]> rs = query.getResultList().iterator(); rs.hasNext();) {
String[] obj = rs.next();
String[] record = new String[colcount];
System.arraycopy(obj, 0, record, 0, colcount);
array[ rowcounter++] = (String[]) record;
}
a.add(array);
}catch(Exception ex){
et.rollback();
}
closeEntities();
return a;
}
我想知道如何得到列的长度。有人知道怎么做吗?我的实体是Idioma,它由stringpalabra、stringidioma和int-wordID组成
提前谢谢 错误说明一切,那不是类的数组,而是对象的数组。您可以更改演员阵容并使用:
colcount = ((Object[]) query.getResultList().get(0)).length;
colcount = ((Object[]) query.getResultList().get(0)).length;