ResultSet結果集返回給乙個陣列

2021-07-28 15:37:13 字數 1096 閱讀 8154

最近的專案使用jdbc進行資料庫操作比較多,result set返回資料的操作從網上搜尋總結如下:

public string search()

conn.commit();

} catch (sqlexception e) catch(exception e)finally catch (sqlexception e)

}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

【方法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;

參考 

結果集ResultSet獲取行數

最近有課,跟著老師寫個小微博,他的介面是這樣的 然後在獲取微博數的時候我跳進了坑!老師用的jdbc,select那塊是list,map然後在獲取以後可以直接通過size 獲取微博數,我用的c3p0返回的resulset結果集,所以悲劇發生了 看下我的code public int getcountw...

關於java中返回ResultSet結果集行數

st conn.createstatement int rowcount 0 resultset resultset st.executequery sql while resultset.next 此時返回的rowcount就是對應的結果集的總的行數。但是此時的resultset.next 已經執...

ResultSet結果集為空判斷

之前對resultset結果集的next 方法的引用沒太多在意,常常就是直接while rs.next 進行遍歷。如果要對rs結果集做是否為空進行判斷的話,很多人第一想法是 if rs null 這是錯誤的,無論什麼結果都會返回 false 的結果,在這裡我們就需要用if rs.next 或者是if...