最近的项目使用jdbc进行数据库操作比较多,result set返回数据的操作从网上搜索总结如下:
public String[] search(){
List<String> list = new ArrayList<String>();String sql = "select name from user" ;
try {
conn = DBUtil.getConnection();//连接数据库的
ps = conn.prepareStatement(sql);
ResultSet rs= ps.executeQuery();
while(rs.next()){
list.add(rs.getString(1));
}
conn.commit();
} catch (SQLException e) {
e.printStackTrace();
return null ;
}catch(Exception e){
e.printStackTrace();
}finally{
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
String user[] = (String[])list.toArray(new String[list.size()]);
return user;
}
【方法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;
}
参考 https://zhidao.baidu.com/question/570803297.html
http://jingyan.baidu.com/article/8065f87f80dd5c233124980f.html