最近的專案使用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...