jsf中创建变量不输出值

Create variables in jsf without outputting the value

在 jsp 中,我可以像在这种情况下那样使用 el 创建自定义变量

#{l = ["one", "two", "three"]}
<h:body>
    <h:outputText value="#{l}"/>
</h:body>

但在这种情况下,只要我在第一行创建它们,它们就会在页面上输出,结果是双倍的。有没有办法定义它们而不在屏幕上打印它们?

按照此处所述使用 JSTL 集标记 JSTL 看起来像:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
    <head>
    <title><c:set> Tag Example</title>
    </head>
    <body>
        <c:set var="salary" scope="session" value="${2000*2}"/>
        <c:out value="${salary}"/>
    </body>
</html>

也可以使用标准 JSP 小脚本来嵌入 Java 代码并声明变量,这些变量在整个 JSP 中可用并且可以在 EL 中使用:

<html>
    <body>
    <%
        // This is a scriptlet.  Notice that the "date"
        // variable we declare here is available in the
        // embedded expression later on.
        java.util.Date date = new java.util.Date();
    %>
        The time is now <%= date %>
    </body>
</html>