gpt4 book ai didi

jsp - 如何使用 JSTL 显示在 JSP 本身中定义的 ArrayList 的值

转载 作者:行者123 更新时间:2023-12-04 18:43:55 26 4
gpt4 key购买 nike

我有一个在 JSP 的 scriptlet 中定义的 ArrayList。在正文部分,我想使用 JSTL forEach 循环显示项目。

在学习了类似 this one 的教程之后,我写了下面的代码:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page import="java.util.ArrayList" %>

<%
ArrayList<String> fruits = new ArrayList<String>();
fruits.add("Orange");
fruits.add("Apple");
%>

<html>
<head>
<title>JSTL</title>
</head>
<body>
<c:forEach var="fruit" items="${fruits}">
<c:out value="${fruit}" />
</c:forEach>
</body>
</html>

但是我得到的是空白页。上面的代码哪里出错了?

我能找到的所有教程似乎都在 servlet 中定义了 bean 的 ArrayList,并通过 request 将它们传递给 JSP。在 forEach 循环中,他们使用 c:out${bean.prop} 来打印它。我没有这样尝试过。我想做一些更简单的事情,但似乎无法让这段代码工作。

最佳答案

添加 pageContext.setAttribute("fruits", fruits);

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

<%
ArrayList<String> fruits = new ArrayList<String>();
fruits.add("Orange");
fruits.add("Apple");
pageContext.setAttribute("fruits", fruits);
%>
<html>
<head>
<title>JSTL</title>
</head>
<body>
<c:forEach var="fruit" items="${fruits}">
<c:out value="${fruit}" />
</c:forEach>
</body>
</html>

关于jsp - 如何使用 JSTL 显示在 JSP 本身中定义的 ArrayList 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14756412/

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