JavaWeb学习笔记10——利用Filter避免未经登录进入主页

==============

在上一节中我们已经完成了两个页面,即登录页面和博客主页,但我们发现,在浏览器中直接用博客主页的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==“”){

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值