我有index.jsp
,我需要在其中包含header.jsp
。问题是 - header.jsp包含动态菜单(对于loggedIn用户和非登录用户)我可以检查用户是否已登录或未使用index.jsp
中的会话。但不在header.jsp
如何在这种情况下包含标题?
我可以在header.jsp
中访问会话对象吗?
答案 0 :(得分:1)
在header.jsp
中添加条件语句。 (假设您的会话密钥名为islogged
,代表状态是否记录了用户)
<c:choose>
<c:when test="${not empty islogged}">
//html markup for logged user
</c:when>
<c:otherwise>
//html markup for not logged user
</c:otherwise>
</c:choose>
编辑:
@我没有维护任何会话密钥..但我想...我该怎么做?
创建servlet,在doPost()方法中比较用户名和密码,如果用户已验证,则设置会话密钥值。
您可以通过查看filter中的会话密钥值来验证用户(无论他/她是否已登录)。
答案 1 :(得分:0)
您可以将表达式放入头文件中,以检查您是否已登录。 例如。
<%
if(user.session != null)
{
//includeFile here
%>
<jsp:include file="header.jsp" />
<%
}
%>