一尘不染

在jsp中显示数据

jsp

我是jsp的新手,面临一个问题。我需要创建jsp页面,该页面显示servlet中的数据。Servlet代码:

protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    CustomersDao customersDao = new CustomersDaoImpl();
    List<Customers> custList = customersDao.getAllCustomers();
    request.setAttribute("customersList", custList);
    request.getRequestDispatcher("/test.jsp").forward(request, response);        
}

jsp页面代码:

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Test Page</title>
    </head>
    <body>
        <%-->
        <table border="1">           
            <tr>
                <td>${requestScope['customers'].name}</td> 
                <td>${requestScope['customers'].lastname}</td> 
                <td>${requestScope['customers'].totalAmount}</td>
            </tr>              
        </table>
        <--%>

        <table border="1">
            <c:forEach var="element" items="${requestScope['customersList']}">
                <tr>
                    <td><c:out value="${element.name}" /> TEST.name</td> 
                    <td>${element.lastname} TEST.lastname</td> 
                    <td>${element.totalAmount} TEST.totalAmount</td>
                    <td> ololo </td>
                </tr> 
             </c:forEach>
        </table>

    </body>
</html>

当我将单个对象发送到jsp时,它可以正常工作(代码的注释部分)。但是,当我尝试发送列表时,我无法分离对象,浏览器仅向我显示测试消息。那么我该如何解决呢?


阅读 197

收藏
2020-06-08

共1个答案

一尘不染

当我将单个对象发送到jsp时,它可以正常工作(代码的注释部分)。但是,当我尝试发送列表时,我无法分离对象,浏览器仅向我显示测试消息。

您忘记了包含核心标签库。这就是为什么<c:forEach>它不起作用,但是如果您仅传递单个对象,它将起作用。

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
2020-06-08