我们在做java web项目时候遇到过常见的问题,我们每次访问浏览器的某个页面,该页面就分配给我们一个指定的session对象,它有唯一的id,如果在JSP页面中用if(session != null)这样判断session是否为空是不行的,这样判断的结果是session总不为空,那么如何判断呢? 我们思路可以这样想,如果session为空,那么可以等价于session中不含有健值对,那么问题就好解决了,以类似电子商城项目为例,当用户没有进行登陆时,显示注册和登陆,当用户登陆了,则显示推出
代码如下:
<%
Enumeration<String> attrs = session.getAttributeNames(); //获取session中所有的健
//判断attrs中是否含有元素健
if(attrs.hasMoreElements()) {
%>
<span class="blue"><font color="red">${session.current_user}</font></span>
<span class="blue"><a href="Login.jsp"><font color="black">[退出]</font></a></span>
<%
}
else
{
%>
<span class="blue"><a href="Login.jsp"><font color="red">[登录]</font></a></span>
<a href="reg.jsp"><font color="green">[注册]</font></a>
<%
}
%>