怎么我写的list页面只显示数据库里的第一条数据?求大神帮我看看

DAO里面的代码是publicList<User>list(){Connectionconn=null;PreparedStatementps=null;ResultSe... DAO里面的代码是public List<User> list() {
Connection conn=null;
PreparedStatement ps=null;
ResultSet rs=null;
List<User> users=new ArrayList<User>();
try {
conn=DatebaseConnection.getConnection();
String sql="select * from usertest";
ps=conn.prepareStatement(sql);
rs=ps.executeQuery();
if(rs.next()){
User user=new User();
user.setId(rs.getInt("id"));
user.setUsername(rs.getString("username"));
user.setNickname(rs.getString("nickname"));
user.setPassword(rs.getString("password"));
users.add(user);
}

} catch (SQLException e) {

e.printStackTrace();
}finally{
DatebaseConnection.close(ps);
DatebaseConnection.close(rs);
DatebaseConnection.close(conn);
}

return users;
}
list.jsp的代码是

<html>
<head>
<%
IUserDAO userDAO=DAOFactory.getUserDAO();
List<User> users=userDAO.list();
%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>用户列表</title>
</head>
<body>
<jsp:include page="inc.jsp"></jsp:include>
<table align="center" width="500" border="1">
<tr>
<td>用户ID</td><td>用户名称</td><td>用户昵称</td><td>操作</td>
</tr>
<%
for(User u:users){
%>
<tr>
<td><%=u.getId()%></td>
<td><%=u.getUsername() %></td>
<td><%=u.getNickname() %></td>
<td><a href="">删除</a> <a href="">更新</a></td>
</tr>
<%
}
%>
</table>
展开
 我来答
梦_越
推荐于2018-04-21 · 超过63用户采纳过TA的回答
知道小有建树答主
回答量:107
采纳率:0%
帮助的人:61.2万
展开全部
你在把结果集放到list中的时候,用的只是if判断啊.判断完成就结束了,
这里如果要显示所有结果,应该用循环的吧while,把原有结果都列出来
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式