在 jsp 中打印会话属性

2022-09-01 22:02:51

我的web应用程序已准备就绪,但我只想添加一个以用户名作为标题的小下拉菜单。这是我的jsp代码:

                <i class="icon-user"></i> 
                <%
                    session.getAttribute("name");
                %>
                <span class="caret"></span>

它说

无法解析会话

9:              <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
10:                     <i class="icon-user"></i> 
11:                     <%
12:                         session.getAttribute("name");
13:                     %>
14:                     <span class="caret"></span>
15:                 </a>

有一个会话,因为我已登录。

亲切问候


答案 1

您可以使用 EL,这在 JSP 中是首选的。

<c:out value="${sessionScope.name}"/>

或者,如果该值是 HTML 安全的,则可以使用name

${sessionScope.name}

确保 JSP 为“允许访问会话”。

<%@ page session="true" %>

要使用核心 JSTL,请确保包含以下代码。

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

答案 2

您可以尝试其他方法:

<% request.getSession().getAttribute("name") %>

未得到解决的原因是,您必须在 page 指令中设置。sessionsession="false"

请阅读此处以获取进一步的参考