gpt4 book ai didi

Java JSTL foreach

转载 作者:行者123 更新时间:2023-11-30 06:14:37 25 4
gpt4 key购买 nike

我在使用某些 JSTL 代码时遇到一些问题。问题是我正在尝试将登录的用户的 id 与保留类中的 id 进行比较,该保留类具有用户 id 的外键。完成此操作后,我尝试使用更新链接填充页面基于预订 ID。

这是我尝试过的代码,但我找不到让它工作的方法。

<table>
<tr>
<th>Reservation Id</th>
<th>Data CheckIn</th>
<th>Data CheckOut</th>
<th>Numar Persoane</th>
<th>Numar Camere</th>
<th>Action</th>

<%
List<ReservationBean> theReserv = (List<ReservationBean>) request.getAttribute("RESERVATION_LIST");
%>
<% int userId = (Integer) request.getSession().getAttribute("userId"); %>

<c:forEach var="tempReservation" items="${RESERVATION_LIST}">
<!-- set up a link for each res -->
<c:url var="tempLink" value="UserControllerServlet">
<c:param name="command" value="LOAD"/>
<c:param name="reservationId" value="${tempReservation.reservationId}"/>
</c:url>

<c:url var="deleteLink" value="UserControllerServlet">
<c:param name="command" value="DELETE"/>
<c:param name="reservationId" value="${tempReservation.reservationId}"/>
</c:url>

</c:forEach>


<% for(ReservationBean res : theReserv){
/* int userId = (Integer) request.getSession().getAttribute("userId"); */
if(userId == res.getUserId()){ %>
<tr>
<td> <%= res.getReservationId() %> </td>
<td> <%= res.getDataCheckin() %> </td>
<td> <%= res.getDataCheckout() %> </td>
<td> <%= res.getNrPersoane()%> </td>
<td> <%= res.getNrCamere() %> </td>
<td><a href="${tempLink}">Update</a>
|
<a href="${deleteLink}"
onclick="if(!(confirm('Are you sure you want to delete this reservation?'))) return false">Delete</a>
</td>
</tr>
<%}%>
<%}%>
</tr>
</table>

在第二个 for 中,我将登录用户的 id 与预订类中的用户 id 进行比较,但是更新后的链接当然将包含第一个 for 的最后一个值,我不知道如何做我在纯 java 中使用 JSTL 所做的事情,只有一个并获取更新链接或删除链接的正确值。你们知道如何做到这一点吗?

最佳答案

我尝试过这样的事情

<table>
<tr>
<th>Reservation Id</th>
<th>Data CheckIn</th>
<th>Data CheckOut</th>
<th>Numar Persoane</th>
<th>Numar Camere</th>
<th>Action</th>

<%
List<ReservationBean> theReserv = (List<ReservationBean>) request.getAttribute("RESERVATION_LIST");
%>
<% int userId = (Integer) request.getSession().getAttribute("userId"); %>

<c:forEach var="tempReservation" items="${RESERVATION_LIST}">
<!-- set up a link for each res -->

<c:if test="${tempReservation.userId}" == userId >
<c:url var="tempLink" value="UserControllerServlet">
<c:param name="command" value="LOAD"/>
<c:param name="reservationId" value="${tempReservation.reservationId}"/>
</c:url>

<c:url var="deleteLink" value="UserControllerServlet">
<c:param name="command" value="DELETE"/>
<c:param name="reservationId" value="${tempReservation.reservationId}"/>
</c:url>
<tr>
<td>${tempReservation.reservationId}</td>
<td>${tempReservation.dataCheckin}</td>
<td>${tempReservation.dataCheckout}</td>
<td>${tempReservation.nrPersoane}</td>
<td>${tempReservation.nrCamere}</td>
<td><a href="${tempLink }">Update</a>
|
<a href="${deleteLink}"
onclick="if(!(confirm('Are you sure you want to delete this student?'))) return false">Delete</a>
</td>
</tr>

</c:if>
</c:forEach>

但是如果条件不起作用或者我不知道如何将 jSTL 代码与 java 代码进行比较

编辑2:我成功了!你必须像这样比较它

<c:if test="${tempReservation.userId == userId }">

感谢您的帮助!

关于Java JSTL foreach,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49494237/

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