作为一个谈天室,必定会有很多人在里面谈天,那么要是有人里面捣乱怎么办?直接踢人不解释。
我们在创立数据库的时候就有这样的考虑,所以我们的账户有两种,一种是管理员,一种是普通用户。

java学习交流群234811600
打开的数据库!我们能够看见存在两种人物。那么管理员就能够把普通用户踢下线。
首要就是在前端页面增加一个踢人下线的按键

java学习交流群234811600
作用:

java学习交流群234811600
重写一下 userbean 的 equals() 和 hashCode() 办法,这两个办法能够协助我们断定帐户。

java学习交流群234811600
现来来写踢人的 servlet 吧!
想要把人踢下线一共分几步?
1.拿到想踢的人的id
2.拿到一切在线的人的列表
3.通过 id 找到这个人的在 Map 中对应的 session
4.毁掉他的 session
5.改写一下页面

java学习交流群234811600
在我们的前端页面来写一下代码

java学习交流群234811600
框住的这段内容表示,只有当用户的身份是管理员(admin)并且列表中的这个的身份不是管理员(admin)的时候,才会显示一个"踢"的按键,我们来看一下作用!

java学习交流群234811600
后面的页面登录的是 aaa(admin ) 前面的页面登录的是bbb(user),只有我们的管理员才能够看见这个踢字呦!
那么现在点击“踢”就能够毁掉用户的 session,现在写一个 servlet 查看用户的 session,如果用户的 session 不存在,就让他从头登录。

java学习交流群234811600
在后台进行判断,如果 session 不存在就回来 1,session 存在就回来 2。写一下 jsp 的页面代码,每1秒钟向后台发送一个 post 恳求,然后获取后台 servlet 回来的数据。

java学习交流群234811600
后台回来1,就代表 session 被毁掉了,我们就提示用户“账号已下线”并且把页面转到登录页面。作用验证:

java学习交流群234811600
踢人下线功能就实现了,账户被踢下线之后,就会回来我们的登录页面了。
在我的谈天室里!
我还踢不了你了!

今天就分享到这里吧!
再见了
如果大家想要更多IT行业情况,或者学习资料,或者 你们想要了解什么内容都可以在评论区告诉我哦!争取满足大家的需求!