麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JSP > 正文

jsp頁面常用的查詢及顯示方法分析

2024-09-05 00:22:38
字體:
來源:轉載
供稿:網友

本文實例講述了jsp頁面常用的查詢及顯示方法。分享給大家供大家參考,具體如下:

背景:

1. 需要將數據庫查詢結果在JSP中以列表方式顯示
2. 在一個良好的J2EE模式中數據庫查詢一般用DAO實現(Data Access Object), JSP僅用于顯示數據

方法一:

建一個類,將查詢出的結果封裝到該類中,然后將該類對象添加到List中。(這個也是我最開始時用的方法,不通用且太麻煩了)。

方法二:

在介紹方法二的時候,我們先來看看如何把ResultSet轉化為List吧,代碼如下:

private static List resultSetToList(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取出所有數據封裝進Collection。

具體做法:

1. 生成一個List對象(List list = new ArrayList() )。
2. 生成一個Map對象(Map map = new HashMap() )。使用Map封裝一行數據,key為各字段名,value為對應的值。(map.put("USER_NAME"), rs.getString("USER_NAME"))
3. 將第2 步生成的Map對象裝入第1步的list對象中(list.add(map) )。
4. 重復2、3步直到ResultSet遍歷完畢

在DBUtil. resultSetToList(ResultSet rs)方法中實現了上述過程(所有列名均使用大寫),可參考使用。

示例代碼:

//查詢數據部分代碼:…Connection conn = DBUtil.getConnection();PreparedStatement pst = null;ResultSet rs = null;try{String sql="select emp_code, real_name from t_employee where organ_id=?";pst = conn.preparedStatement(sql);pst.setString(1, "101");rs = pst.executeQuery();List list = DBUtil. resultSetToList(ResultSet rs);return list;}finally{DBUtil.close(rs, pst ,conn);}//JSP顯示部分代碼<%List empList = (List)request.getAttribute("empList");if (empList == null) empList = Collections.EMPTY_LIST;%>…<table cellspacing="0" width="90%"><tr> <td>代碼</td> <td>姓名</td> </tr><%Map colMap;for (int i=0; i< empList.size(); i++){colMap = (Map) empList.get(i);%><tr><td><%=colMap.get("EMP_CODE")%></td><td><%=colMap.get("REAL_NAME")%></td></tr><%}// end for%></table>

解決方法三:

使用RowSet。

RowSet是JDBC2.0中提供的接口,Oracle對該接口有相應實現,其中很有用的是oracle.jdbc.rowset.OracleCachedRowSet。 OracleCachedRowSet實現了ResultSet中的所有方法,但與ResultSet不同的是,OracleCachedRowSet中的數據在Connection關閉后仍然有效。

oracle的rowset實現在http://otn.oracle.com/software/content.html的jdbc下載里有,名稱是ocrs12.zip

示例代碼:

//查詢數據部分代碼:import javax.sql.RowSet;import oracle.jdbc.rowset.OracleCachedRowSet;…Connection conn = DBUtil.getConnection();PreparedStatement pst = null;ResultSet rs = null;try{……String sql="select emp_code, real_name from t_employee where organ_id=?";pst = conn.preparedStatement(sql);pst.setString(1, "101");rs = pst.executeQuery();OracleCachedRowSet ors = newOracleCachedRowSet();

希望本文所述對大家jsp程序設計有所幫助。


注:相關教程知識閱讀請移步到JSP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 视频一区 中文字幕 | 久久国产精品99国产 | 中文字幕 亚洲一区 | 久久久久女人精品毛片九一 | 一区二区三高清 | 欧洲精品久久久久69精品 | 毛片视频网站在线观看 | 成人精品一区二区三区中文字幕 | 久久精品一级 | 日日草夜夜| 欧美亚洲一区二区三区四区 | 免费观看一区二区三区视频 | 91av亚洲| 欧美不卡视频在线观看 | a一级黄 | 成人在线视频免费看 | 亚洲一区二区三区四区精品 | 国产羞羞视频在线免费观看 | 中文字幕涩涩久久乱小说 | 日韩黄色片免费看 | 久久网日本 | 国产一区在线观看视频 | 欧美特一级片 | 秋霞a级毛片在线看 | 毛片免费视频观看 | 成人免费视频 | 欧美亚洲一区二区三区四区 | 国产精品免费久久久 | 少妇一级淫片免费放播放 | 久久久久久中文字幕 | 日本黄色大片免费观看 | 欧美成人精品欧美一级乱黄 | 99影视在线视频免费观看 | 羞羞答答tv | 黄色7777 | 亚洲一区二区三区高清 | 欧美18videos性处按摩 | 日本xxxx色视频在线观看免费, | 免费毛片免费看 | 毛片一级网站 | 亚洲综合视频网 |