java - 遇到的一個ResultSet結果集的問題,請看代碼?
問題描述
有問題段的代碼如下:
public ArrayList<menuentity> getMenuList(Connection con){
ArrayList<menuentity> list=null;try { String sql='select * from menu where misEnable=1'; Statement stmt=con.createStatement(); ResultSet rs=stmt.executeQuery(sql); System.out.println('rs:'+rs); menuentity m=null; list=new ArrayList<menuentity>(); System.out.println('new ArrayList<menuentity>();'); while(rs.next()){System.out.println('rs.next()');m=new menuentity();m.setMid(rs.getString(1));m.setMname(rs.getString(2));m.setMurl(rs.getString(3));m.setMimg(rs.getString(4));m.setMparnetid(rs.getString(5));m.setMcreatedate(rs.getDate(6));m.setMisEnable(rs.getInt(7));m.setMcreater(rs.getString(8));m.setMisLeaf(rs.getInt(9));System.out.println('1:'+rs.getString(1));list.add(m); } } catch (Exception e) { e.printStackTrace();}System.out.println('1daolist:'+list);return list; }
現象描述:這個方法中能執行到System.out.println('new ArrayList<menuentity>();');處,但是while循環里面沒有執行,因為 System.out.println('rs.next()');在控制臺沒有輸出,但是sql語句在數據庫能查到數據,方法傳入的connection也沒有問題,因為另外有頁面和這個方法共同用過一個connection,另外一個頁面能從后臺返回數據,這是在eclipse中和tomcat聯系調試的
問題:為什么while里面沒有執行,可能是什么原因?謝謝!!!
問題解答
回答1:Statement stmt=con.createStatement(); ResultSet rs=stmt.executeQuery(sql);
這個寫的不對吧
寫成這個試試
Statement stmt=con.createStatement(sql); ResultSet rs=stmt.executeQuery();
