繁体   English   中英

在jsp中打印会话属性

[英]Print session attributes in jsp

我的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>

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

亲切的问候,

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

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

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

${sessionScope.name}

确保JSP是允许访问会话。

<%@ page session="true" %>

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

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

您可以尝试其他方法:

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

session无法解决的原因是,您必须在页面指令中设置session="false"

阅读此内容以获取更多参考

我同意@Pau Kiat Wee的回答。 但是您也可以在模型映射中的控制器中设置此用户名,然后在EL中简单地使用它即可。 那也是一个不错的选择。 希望这对您有所帮助。 干杯。

在您的servlet中:

 1) get your parameter:

    String param = request.getParameter("param");

 2) send it to the request object as an attribute:

    request.setAttribute("param", param);

在您的JSP中:

   use JSTL, and EL to return the attribute you sent from your servlet:

   <input type="text" name="param" value="<c:out value="${param}" />" />

然后你去。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM