JSP从数组列表中打印数据

时间:2015-10-29 18:55:51

标签: java jsp printing

我有一个Flight的POJO,其中我只有一些私有类变量,getter和setther,我的servlet中有以下代码:

request.setAttribute("FLIGHT_LIST", flightList);
request.getRequestDispatcher("/user_panel.jsp").forward(request, response);

以下jsp页面

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ page import="entities.Flight"%>
<%@ page import="java.util.List"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<h3>Hello im user</h3>
<div>
    <a href="login.jsp">Login</a> | <a href="/Airport/LogoutServlet">Logout</a>
    | <a href="/Airport/UserProfile">Profile</a>
</div>
<hr>
<div>
    <table style="width: 100%" border="1">
        <tr>
            <th>ID</th>
            <th>Number</th>
            <th>Type</th>
            <th>Departure City</th>
            <th>Departure Time</th>
            <th>Arrival City</th>
            <th>Arrival Time</th>
        </tr>
        <tr>
            <td>Eve</td>
            <td>Jackson</td>
            <td>94</td>
            <td>94</td>
            <td>94</td>
            <td>94</td>
            <td>94</td>
        </tr>
        <c:forEach var="element" items="${FLIGHT_LIST}">
            <tr>
                <td><c:out value="${element.idflight}" /></td>
                <td><c:out value="${element.number}" /></td>
                <td><c:out value="${element.type}" /></td>
                <td><c:out value="${element.departureCity}" /></td>
                <td><c:out value="${element.departureTime}" /></td>
                <td><c:out value="${element.arrivalCity}" /></td>
                <td><c:out value="${element.arrivalTime}" /></td>
            </tr>
        </c:forEach>
    </table>
</div>
<hr>
....
</body>
</html>

问题是它没有按照我的预期运作。它在表格中打印值${...}。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

我觉得你还没有正确配置jstl,所以for循环不会像shud那样表现。试试下面的简单forEach,看看你的设置是否有效。

<c:forEach var="i" begin="1" end="5">
   Item <c:out value="${i}"/><p>
</c:forEach>

另见

答案 1 :(得分:0)

我添加了

<%@ page isELIgnored="false" %>

现在可行了