==============
在上一节中我们已经完成了两个页面,即登录页面和博客主页,但我们发现,在浏览器中直接用博客主页的url也能直接进入登陆后的页面,这并不是我们想要的结果。因此本节重点解决这一问题。
解决方法也很简单,利用Filter就可解决这一问题,在LoginServlet中如果我们验证通过了用户的登录,那我们可以在session中添加一个user数据作为标记。在Filter中我们再从session中获取user,如果获取到了,则代表我们是登陆进来的,正常执行后面的动作(即打开主页),否则跳转到登录页。最重要的一点是我们要在web.xml中配置Filter,将需要进行过滤的url添加进去(即将博客主页添加进去)
二、关键代码
======
LoginServlet.java
if(isLoing) {
//这个字符串将会在js中被接收
//1代表登录成功
//2代表用户名或密码为空
//3代表用户名或密码错误
//若登陆成功,则将用户名存入session,后面在Fileter中进行检测,如果session中有相应数据,则证明用户是登陆进入的主页,而不是直接通过url进入。
request.getSession().setAttribute(“user”,Account);
out.write(“1”);
}else if(Account==“”||Password==“”){
<