您的位置首页百科知识

Java中将ResultSet结果集转换为List

Java中将ResultSet结果集转换为List

的有关信息介绍如下:

Java中将ResultSet结果集转换为List

ResultSet数据库结果集(通常通过执行查询数据库的语句生成),默认的 ResultSet 对象不可更新,仅有一个向前移动的指针。只能迭代它一次,并且只能按从第一行到最后一行的顺序进行。所以,将结果集转换为List集合更便于数据的使用

【方法1】借助bean的办法

//rs是一个查询语句所返回的结果集

ResultSet rs=new ResultSet();

rs=pstmt.executeQuery();

//将rs逐条取出,并将每一项放在一个bean对应的值里

while(rs.next())

{

RecBean rec=new RecBean();

rec.setId(rs.getInt(1));

rec.setAgentNo(rs.getString(2));

rec.setFileName(rs.getString(3));

list.add(rec);

}

【方法2】借助ResultSetMetaData 和Map

private static List convertList(ResultSet rs) throws SQLException {

List list = new ArrayList();

ResultSetMetaData md = rs.getMetaData();

int columnCount = md.getColumnCount();

while (rs.next()) {

Map rowData = new HashMap();

for (int i = 1; i <= columnCount; i++) {

rowData.put(md.getColumnName(i), rs.getObject(i));

}

list.add(rowData);

}

return list;

}