防止同一用户重复登录思路

注意:此方法仅适用于以SQL Server作为数据库的情况下。

实现思路:在SQL Server中,当连接断开之后,系统会自动将临时表回收,因此我们就可以通过创建和登录用户名对应的全局临时表,然后登录时判断这个临时表是否存在。如果存在,说明其对应的用户名已登录,则弹出消息提示不能重复登录;如果不存在,则登录并创建临时表。

说明:使用此方法的优点在于,已登录标记是在客户端发送请求并建立连接后创建的,但退出登录则不需要客户端去处理,只要到SQL Server的连接断开了,这个标记就会被自动销毁,这个销毁操作是由数据库服务器来执行的。因此即使客户端因为断电、程序崩溃一类的原因非正常退出,并且不论一个用户是在同一台电脑上登录,还是在不同的电脑上登录,也都是有效的!不需要管理员到用户表中去修改用户的登录状态什么的。

你可能感兴趣的:(Java&,SQL)