求一个用JAVA方法查询数据库,返回多条数据,并保存在一个向量中,然后通过Servlet传递到JSP页面中,迭代显示!

如题!!!偶小白,搞了好几天,都未搞得出来!!!希望有位高手帮帮忙!!看看是怎么一回事!!!!!
最后能用的话,另有分加!谢谢~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
下面是我做好的关键代码段:
1.方法体:

public static List listQutry(Connection con, int userid){
PreparedStatement prepStmt = null;
ResultSet rs = null; //结果记录集合
String queryblog = "select blogid,blogname,number,blogtime from bloglist where userid=?";
List list = new ArrayList();

try {
prepStmt = con.prepareStatement(queryblog);
prepStmt.setInt(1,userid);
rs = prepStmt.executeQuery(); //查询数据库并返回结果记录集合
ResultSetMetaData resultSetMetaDate = rs.getMetaData();
int columnCount = resultSetMetaDate.getColumnCount();
while (rs.next()) {
for (int i = 1; i <= columnCount; i++){

list.add(rs.getString(i));
}
}
} catch (Exception e) {
e.printStackTrace();
}
return list;
}

2.servlet的语句段:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
HttpSession session = request.getSession(); //获取用户当前会话
String id = (String)session.getAttribute("id"); //获取用户ID

String page="";
int userid=Integer.valueOf(id).intValue();

if(session==null){
page="index.jsp";
}

List list = new ArrayList();
Connection con = database.getConnection();
list = blogmethods.listQutry(con,userid);
database.closeConnection(con);
if( list == null){
session.setAttribute("msg","还没有写日志!");
page="Blog.jsp";
}else{
//将用户信息对象m存储在session对象当中
request.setAttribute("list", list);
request.getRequestDispatcher("Blog.jsp").forward(request, response);

}

3.JSP的迭代:
<%
List list = (List)request.getAttribute("list");

%>
<table width="667" height="339" border="0">
<%
for(int i=0;i<list.size();i++){
List vcTemp = (List)list.get(i);
%>
<tr> <!--No-->
<td ><%=i+1%></td>
<%
for(int j=0;j<vcTemp.size();j++){
%>
<!--data-->
<td ><%=((String)vcTemp.get(j)).equals("")?"":(String)vcTemp.get(j)%> </td>
<%}%>
</tr>
<%}%>

</table>
能详细点么~~~
代码实在点!!!偶小白,不太懂什么专业术语!
呵呵~~~~~~

首先你的这个里面的for循环是不是可以不要。
while都已经做rs是否为空的判断了,你再做一遍是不是有点多此一举,你的意思是不是这个意思,我们理解错吧!
while (rs.next()) {
for (int i = 1; i <= columnCount; i++){
list.add(rs.getString(i));
}
改为:
while (rs.next()) {
list.add(rs.getString(i));
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-01-07
存的时候用泛型存好点。
第2个回答  2011-01-07
我告诉你思路吧,首先你建entity 层和数据库表对应。然后通过DAO层取到数据,放到list里面
通过阿帕奇的DOM4J把数据放到XML中去,不试你是搞不好的
第3个回答  2011-01-08
代码是你自己写的?那还有啥不明白的?基本实现了呀。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网