当前位置: 首页 > 知识库问答 >
问题:

如何在Java web应用程序的jsp中实现if语句?

薛朝
2023-03-14

我的工作是实现一个表来显示即将到来的约会,其中我有一个if语句,我希望在该语句中实现,以防止显示旧的和不在当前时间框架内的数据。例如,约会前的昨天或几周不应该显示在jsp中?

我教过一个if语句,现在的代码是:

 <form method="POST" action="<%=request.getContextPath()%>/Appointment/delete">
                    <c:choose>
                        <c:when test="${empty list}">
                            <h1>No appointments available</h1>
                        </c:when>
                        <c:otherwise>

                            <table class="styled-table" style="margin-bottom: 15px; margin-top:15px;">
                                <thead>
                                    <tr>
                                        <th>Patient Name</th>  
                                        <th>Appointment Date</th>
                                        <th>Delete</th>
                                    </tr>
                                </thead>
                                <c:forEach items="${list}" var="record">
                                    <c:choose>
                                       
                                        <c:when test="${record.date lt} <% LocalDateTime now = LocalDateTime.now(); %>">
                                    <tbody>
                                        <tr class="active-row">
                                            <td>${record.name}</td>
                                            <td>${record.date}</td>
                                            <td id="id"><button  class="delete"  value="${record.appointmentId}" ><i class="fas fa-trash-alt"></i></button></a></td>
                                        </tr>
                                    </tbody> 
                                        </c:when>
                                        <c:otherwise>
                                         
                                        </c:otherwise>
                                    </c:choose>
                                </c:forEach>
                            </table >
                        </form>

好吧,我对学习jsp和Java web开发的东西是相当新的,如果能得到这方面的帮助,我会非常感激。提前道谢。

共有1个答案

李森
2023-03-14

尽管您可以实现这种过滤,但JSP并不真正适合在呈现过程中进行大量的客户端处理。我建议您在servlet代码中确定应该显示哪些约会,并返回这些约会。因此列表将以正确的约会开始填充

如果您仍然希望在JSP中这样做,下面是一些建议。要在JSP循环中添加条件,可以执行如下操作:

<c:forEach items="${list}" var="record">
    <!-- Only show records younger than 7 days -->
    <c:if test="${record.ageInDays lt 7}">
        <tbody>
            <tr class="active-row">
                <td>${record.name}</td>
                <td>${record.date}</td>
                <td id="id"><button  class="delete"  value="${record.appointmentId}" ><i class="fas fa-trash-alt"></i></button></a></td>
            </tr>
        </tbody> 
    </c:if>
</c:forEach>

要使其工作,您应该在Java记录类中添加一个方法

public class Appointment {

    private static final long ONE_DAY_IN_MILLIS = 24 * 60 * 60 * 1000;

    //... existing code

    public int getAgeInDays() {
        return (System.currentTimeMillis() - date.getTime()) / ONE_DAY_IN_MILLIS;
    }
}

这种方法避免了在JSP中进行日期计算。

 类似资料:
  • 我的控制器 我的主营 我还补充了

  • 我是一个初学者,我只是找不到一个可行的解决方案。 我想做的是:用户输入用户名和密码,然后应用程序登录到一个网站。如果登录失败,则返回false和正确消息,否则返回true并继续执行下一个活动(获取另一个站点,解析html并显示内容)。 我的难题是:如何检测成功登录? 这是我的密码 LoginActivity的相关代码: 身份验证类中的方法: 由于我获得了200(OK)状态,我认为POST的代码工作

  • 我正在尝试使用OpenAM在现有的web应用程序中实现SSO,请参考以下链接 http://fczaja.blogspot.com/2012/06/idp-initiated-sso-and-identity_21.html ps.我的网络应用程序已经有了自己的登录页面 现在实现后得到的是,openAM登录页面在我的web应用程序中受到保护,我需要再次登录到我的应用程序 我需要的是,想跳过我的应用

  • 问题内容: 在Android应用中实施应用内结算似乎非常复杂。我该怎么办?SDK中的示例应用程序只有一个Activity,对于像我这样的具有多个Activity的应用程序来说,这过于简化了。 问题答案: 好吧,我将尝试解释我的经历。我不认为自己是专家,但是几天我都伤透了脑筋。 对于初学者来说,我很难理解示例和应用程序的工作流程。我认为从一个简单的示例开始应该会更好,但是将代码分成几小段并且不知道是

  • 我正在开发一个使用Hibernate的简单JSF应用程序。我将所有必需的库导入WEB-INF/lib文件夹,并将它们指向类路径。但是当我尝试编译它时,我遇到了错误: 这是我创建SessionFactory并使用它的代码: 我在这里使用它: 那我做错了什么?我该怎么解决这个问题?

  • 我有一个网页,其中包含一个表格,你可以在其中编辑每一个单元格的内容。该表的典型大小约为12列40行。教师通常使用此页面编码我们区域的成绩。但我们的区域有时连接不畅,而且有时老师会丢失他们所做的编码(他们通常只在对所有内容进行编码后才保存)。 所以现在,我正在考虑实现一个autosave特性。我认为我想的解决方案很简单:每次编辑单元格然后失去焦点时,执行一个ajax请求来保存数据。至少我是这么想的。