gpt4 book ai didi

java - ArrayList 迭代相同的数据

转载 作者:行者123 更新时间:2023-12-04 05:02:57 24 4
gpt4 key购买 nike

我尝试以 MVC 模式创建一个网络应用程序来显示来自数据库的数据

JSP:

<c:forEach var="pro" items="${list}">
<tr>
<td><c:out value="${pro.reqno}"></c:out></td>
<td><c:out value="${pro.leave_Type}"></c:out></td>
<td><c:out value="${pro.no_of_days}"></c:out></td>
<td><c:out value="${pro.status}"></c:out></td>
<td><c:out value="${pro.balanceUnits}"></c:out></td>
<td><c:out value="${pro.totalUnits}"></c:out></td>
</tr>
</c:forEach>

小服务程序:

           ArrayList temp = summary.getSummary(objUsr);
request.setAttribute("list", temp);
RequestDispatcher rd = request.getRequestDispatcher("JSP/login-success.jsp");

DAO 类:

public ArrayList<LeaveSummary> getSummary(LeaveSummary objUsr) throws SQLException {
PreparedStatement stmt = null;
ArrayList<LeaveSummary> rowArray = new ArrayList<LeaveSummary>();
ResultSet rs = null;
try {
LeaveSummary getValuesFromDb = new LeaveSummary();
Connection con = ConnectionProvider.getCon();
stmt = con.prepareStatement("SELECT * FROM create_request where username=?");
stmt.setString(1, objUsr.getUser_name());
rs = stmt.executeQuery();
while (rs.next()) {
getValuesFromDb.setReqno(rs.getInt(1));
getValuesFromDb.setUser_name(rs.getString(2));
getValuesFromDb.setNo_of_days(rs.getInt(4));
getValuesFromDb.setLeave_Type(rs.getString(3));
getValuesFromDb.setStatus(rs.getString(6));
getValuesFromDb.setTotalUnits(rs.getInt(7));
getValuesFromDb.setBalanceUnits(rs.getInt(8));
rowArray.add(getValuesFromDb);
}
}
catch(Exception e)
{
e.printStackTrace();
}

数据库表:


1 san                  Casual                        1 sicks                pending                                                  10                                      9 
2 san Others 2 Functional pending 10 8

但它只打印第二行(即最近添加的行),我如何打印我表中的两行

最佳答案

创建一个新实例

LeaveSummary getValuesFromDb = new LeaveSummary(); 

在你的 while 循环中。您不是为数据库中的每条记录创建 LeaveSummary 的新实例。因此,每次循环结果集时都会重写同一个对象。这就是最后一条记录单独存在于列表中的原因。

关于java - ArrayList 迭代相同的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20782867/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com