2013-04-29 280 views
-2

我使用MySql数据库(Connectpr/J驱动程序)在java中进行了登录和注册系统。用户名和密码存储在本地主机上的数据库中。当我登录用户时,我检查用户名是否与数据库中的密码匹配。问题是如何关闭并重新打开程序,让用户保持登录状态。我应该在数据库中保存当前登录的用户吗?这是正确的做法吗?JDBC登录/注册系统

回答

0

不,您需要将cookie(docs)中存储的用户信息(用户名或用户标识,但不是密码,因为存在安全风险)保存在用户端,因此当他打开新会话时检查cookie并自动登录。

步骤:

  • 用户首次
  • 保存用户信息中的cookie
  • 用户登录时关闭当前会话
  • 用户打开新的会话从饼干
  • 读取用户信息和自动登录

如果其不是一个web应用程序,你可以模拟cookie的行为

+0

我应该如何模拟Java中的cookie行为?谢谢 – Alex 2013-04-29 17:03:13

+0

Cookie基本上是存储在客户端的文件,所以您只需按照上述步骤将此逻辑添加到您的应用程序即可。 – Stephan 2013-04-30 07:18:16

1

如果你不想让用户再次输入,你将需要存储用户名和密码。如果这是一个Web应用程序,那么你可以使用这个w3c cookies

,如果它不是,那么你可以在本地保存用户的计算机上,但使用一些加密逻辑为此看看下面的线程

MD5 encryption