一. 问题背景
登录与未登陆的书城首页会有一个重要的区别。未登录的用户是不能看到“个人信息”选项、“注销”选项之类的。那么我们怎么进行控制显示呢?
二. 解决方案
在jsp页面进行控制:
- 在login.jsp页面点击登录按钮,将请求提交给Servlet方法,Servlet方法中判断登录的user的账号密码是否正确,正确了就将user对象设置到session域中(即
session.setAttribute("user", user)
)。将结果重定向到index.jsp - 在index.jsp页面中进行判断,用
${sessionScope.user}
而不是${user}
,代码如下:
<c:choose>
<c:when test="${empty sessionScope.user}">
...
</c:when>
<c:otherwise>
...
</c:otherwise>
</c:choose>
==如果用了${user}
,那么即使你已经登录了,在浏览器刷新当前页面的时候,session里面的user就获取不出来了。