怎么从ArrayList中取出数据,求高手解答。谢谢。

w13698043083 2011-08-01 03:51:41
我先从数据库拿出数据存入ArrayList之后怎么在jsp页面上取得数据。下面是代码
ArrayList list = new ArrayList() ;
userBean bean = new userBean();
String sql = " select * from UserInfo ";
ResultSet rs = conn.getResultSet(sql);

try {
while(rs.next())
{
bean.setID(rs.getInt(1));
bean.setUserName(rs.getString(2));
bean.setPassword(rs.getString(3));
list.add(bean);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return list;

}
...全文
1698 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
gsy999 2011-08-01
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 softroad 的回复:]
引用 7 楼 gsy999 的回复:
LZ这样写是不行的,对于数据查询返回多行的对象来讲,
userBean bean = new userBean(); 要放在while循环体里面,每一行一个新的bean对象才行.


你那值都一样
[/Quote]

你不懂不要乱喷

try {
while(rs.next())
{
userBean bean = new userBean();
bean.setID(rs.getInt(1));
bean.setUserName(rs.getString(2));
bean.setPassword(rs.getString(3));
list.add(bean);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//-----------------
// 或者
userBean bean = null;
try {
while(rs.next())
{
bean = new userBean();

bean.setID(rs.getInt(1));
bean.setUserName(rs.getString(2));
bean.setPassword(rs.getString(3));
list.add(bean);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
softroad 2011-08-01
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 gsy999 的回复:]
LZ这样写是不行的,对于数据查询返回多行的对象来讲,
userBean bean = new userBean(); 要放在while循环体里面,每一行一个新的bean对象才行.
[/Quote]

你那值都一样
gsy999 2011-08-01
  • 打赏
  • 举报
回复
LZ这样写是不行的,对于数据查询返回多行的对象来讲,
userBean bean = new userBean(); 要放在while循环体里面,每一行一个新的bean对象才行.

Inhibitory 2011-08-01
  • 打赏
  • 举报
回复
去了解一下JSTL,比直接用JSP输出方便很多
li498833284 2011-08-01
  • 打赏
  • 举报
回复
你的代码是 DAO 里的吧。 在servlet里调用这个方法 然后 按一楼的 就可以了 要是dao里的 request 不认识
livesguan 2011-08-01
  • 打赏
  • 举报
回复
恩,一楼说的对.
傻傻的傻傻傻 2011-08-01
  • 打赏
  • 举报
回复
list.get(0);第一个存入的
list.get(1);第二个存入的。
sunshine_99 2011-08-01
  • 打赏
  • 举报
回复
看你的代码,你应该是有一个用户的bean类,里面有ID,userName,password属性。
你把查询的结果放入这个bean中,然后需要你把这个bean request.setAttribute("bean",bean)返回给前台页面
第一个参数是你返回的结果--bean的别名,前台需要通过这个别名来获取其中的数据。

然后JSP页面获取的代码就想一楼所写的那样,通过${bean.id}来获取后台返回值bean中的属性。
你想获取什么属性,直接用。操作就可以
shawn.bug 2011-08-01
  • 打赏
  • 举报
回复
你这是JSP上还是后台的servlet(action)代码啊?


前台JSP要这么显示
你后台要request.setAttribute("user",list);

<c:forEach items="${user}" var="user">  
<tr bgcolor="#EFF3F7">
<td align="center">${user.id }</td>
<td align="center">${user.username }</td>
<td align="center">${user.password}</td>
</tr>
</c:forEach>

${user} 是你传过来的

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧