同志们,有谁知道struts1怎么防止同一用户在多台电脑上同时登录,我做的这个是局域网的,用struts1+hibernate+jsp做的,可以在局域网中访问,可是登录后,其他机器上不用验证就可以进去,怎么解决,请高手指教

解决方案 »

  1.   

    可是登录后,其他机器上不用验证就可以进去
    这个是有问题的。我还以为你想做单点登陆。你在其他机器上开的浏览器session都不一样,结果还是不用登陆就进去了,说明你做的登陆验证有问题。
    这样做:添加一个filter,功能为验证session里面是否有登陆后的用户信息。这里需要登陆后把用户的信息放在session里面。
      

  2.   

    首先登陆信息你保存在本次一份,或者session一份,
    每次login  reques的时候,都进行sql 验证,【某表里面有个是否已经登录的标志位】,如果是第一次登陆,这个标志位置1,否则,如果select 出来这个标志位已经为1,说明已经登录了,然后这条记录还有个时间限制。做的复杂点你可以记录用户动作,这样判断 比如15分钟内没有任何登录 表示已经退出 ……