将scriptlet转换为JSTL

时间:2014-05-17 21:53:59

标签: jsp jstl el

我有这个代码,而且我现在已经阅读过某些地方的文章被高度弃用并且气馁。我想将JSTL用于以下代码,但我有一些问题需要了解JSTL和EL的工作原理。你有什么建议,指南,操作方法吗?

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="java.util.*, ejb.EsempioEntity" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<%
    List<EsempioEntity> list = (List<EsempioEntity>)request.getAttribute("list");
%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>View</title>
    </head>
    <body>
        <%
            if(list!=null)
            {
                for(EsempioEntity ee:list)
                {
                    out.print("<p>"+ee.toString()+"</p>");
                }
            }
            else
            {
                out.print("<p>Nessun dato!</p>");
            }
        %>
    </body>
</html>

2 个答案:

答案 0 :(得分:1)

它的核心看起来像这样:

<c:if test="${empty list}">
  <p>Nessum dato!</p>
</c:if>

<c:forEach items="${list}" var="row">
  <p><c:out value="${row}" /></p>
</c:forEach>

我推荐JSTL info中的资源以获取更多信息。

答案 1 :(得分:1)

请看下面的JSTL。

示例代码:

<c:if test="${list!=null }">
    <c:forEach items="${list}" var="item">
        <p>${item}</p>
    </c:forEach>
</c:if>
<c:if test="${list==null }">
    <p>Nessun dato!</p>
</c:if>

或尝试

<c:choose>
    <c:when test="${list!=null }">
        <c:forEach items="${list}" var="item">
             <p>${item}</p>
        </c:forEach>
    </c:when>
    <c:otherwise>
        <p>Nessun dato!</p>
    </c:otherwise>
</c:choose>