作为一个聊天室,肯定会有很多人在里面聊天,那么要是有人里面捣乱怎么办?直接踢人不解释。

我们在创建数据库的时候就有这样的考虑,所以我们的账户有两种,一种是管理员,一种是普通用户。

打开的数据库!我们可以看见存在两种角色。那么管理员就可以把普通用户踢下线。

首先就是在前端页面添加一个踢人下线的按键

效果:

重写一下 userbean 的 equals() 和 hashCode() 方法,这两个方法可以帮助我们确定帐户。

现来来写踢人的 servlet 吧!

想要把人踢下线总共分几步?

1.拿到想踢的人的id

2.拿到所有在线的人的列表

3.通过 id 找到这个人的在 Map 中对应的 session

4.销毁他的 session

5.刷新一下页面

在我们的前端页面来写一下代码

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

后面的页面登录的是 aaa(admin ) 前面的页面登录的是bbb(user),只有我们的管理员才可以看见这个踢字呦!

那么现在点击“踢”就可以销毁用户的 session,现在写一个 servlet 检查用户的  session,如果用户的 session 不存在,就让他重新登录。

在后台进行判断,如果 session 不存在就返回 1,session 存在就返回 2。写一下 jsp 的页面代码,每1秒钟向后台发送一个 post 请求,然后获取后台 servlet 返回的数据。

后台返回1,就代表 session 被销毁了,我们就提示用户“账号已下线”并且把页面转到登录页面。效果验证:

踢人下线功能就实现了,账户被踢下线之后,就会返回我们的登录页面了。

在我的聊天室里!

我还踢不了你了!

那么今天就到这里了

再见了

java怎么实现踢掉在线用户_Java多人在线聊天室(3)— 踢人下线功能相关推荐

  1. Linux强制踢掉某个用户

    Linux强制踢掉某个用户 1.查看用户 2.查看当前用户 3.强退指定用户 1.查看用户 或者 2.查看当前用户 3.强退指定用户 再次查看:

  2. mysql踢掉登录用户_centos 强制踢掉某登录用户的方法

    linux是一个多用户操作系统,用户可以在不同的地方链接上LINUX服务器,在系统中我们可以用w或者who来查看用户 [root@7273 ~]# who root pts/0 2018-05-5 2 ...

  3. java jsp聊天系统_java web实现简单聊天室

    目标 servlet.jsp实现简单聊天室,用户通过浏览器登录后进入聊天室,可发送消息进行群聊,点击聊天信息框中的用户名可实现拍一拍功能. 基础知识 数据的存取 setAttribute / getA ...

  4. java web聊天室原理_java web实现简单聊天室

    目标 servlet.jsp实现简单聊天室,用户通过浏览器登录后进入聊天室,可发送消息进行群聊,点击聊天信息框中的用户名可实现拍一拍功能. 基础知识 数据的存取 setAttribute / getA ...

  5. java socket编程聊天室_Java Socket通信之聊天室功能

    Java Socket通信之聊天室功能 发布时间:2020-10-17 14:36:00 来源:脚本之家 阅读:73 作者:LY_624 本文实例为大家分享了Java Socket聊天室功能的具体代码 ...

  6. java socket 聊天室_java利用Socket实现聊天室功能实例

    导读热词 最近研究了下Java socket通信基础,利用代码实现了一个简单的多人聊天室功能,现把代码共享下,希望能帮到有兴趣了解的人. 目录结构: ChatClient: package com.p ...

  7. Java NIO示例:多人网络聊天室

    一个多客户端聊天室,支持多客户端聊天,有如下功能: 功能1: 客户端通过Java NIO连接到服务端,支持多客户端的连接 功能2:客户端初次连接时,服务端提示输入昵称,如果昵称已经有人使用,提示重新输 ...

  8. java聊天室源工程文件_socket实现java聊天室,公告等功能,前后端分离(附源码)...

    pom文件 org.springframework.boot spring-boot-starter-websocket application.yml中端口设置 server: port: 1111 ...

  9. JAVA 基于TCP的多人网络聊天室 实现过程

    主要实现功能 多人在线聊天 发送私密消息 新用户加入提示 用户离开提示 功能演示 服务器: package dome;import java.io.DataInputStream; import ja ...

最新文章

  1. 我国近四成程序员单身 盘点各国IT从业者生存现状
  2. mysql range用法_MySQL的常用函数
  3. 【机器学习基础】Python实现行转列?!超简单,赶快get起来
  4. MPEG中面向沉浸式视觉体验的标准化活动
  5. 填充一个池需要多少个线程?
  6. java 方法保存变量_java – 在初始化对象或将其保存为变量并调用该方法时,调用方法的速度更快...
  7. onClientClick 和 onClient 区别
  8. nodepad 关闭语法检查
  9. ApacheCN 人工智能知识树 v1.0
  10. 获取Oracle隐含參数信息
  11. AMD IOMMU与Linux (4) -- Domain, Group, Device
  12. ws2_32.dll下载-ws2_32.dll调用失败如何修复
  13. 域用户账户、组的管理
  14. linux中PATH环境变量的作用和使用方法
  15. 中国云计算产业发展白皮书
  16. 苹果手机投影_智能投影机和手机无线同屏
  17. 新手如何快速入门node.js
  18. JS逆向解密凡科网密码
  19. 速览|京东云11月产品与功能更新
  20. 打表+dp思维+博弈

热门文章

  1. rk3568-rk809电池电量计
  2. c语言中左移一位 由什么补充,计算机原理与基础 —— C语言中的左移与右移
  3. MyEclipse创建ssh项目和连接数据库
  4. Office2016超全安装包+教程+素材包
  5. android 混淆规则作用,Android代码混淆详解
  6. Flot转身为其它的SPC控制图
  7. PHP 单例模式如何实现,PHP 单例模式的实现
  8. 百度打击低质违规站点,你中招了吗?
  9. 【STM32G431RBTx】备战蓝桥杯嵌入式→基本模块→TIM→PWM
  10. Astar - 复赛 4.X博士的彩球游戏