我想知道Web应用程序和桌面应用程序之间的会话。
在Web应用程序中,我们可以使用Session或cookie(或HTTP Session - 有状态,如果使用EJB),但在桌面应用程序中,我如何管理对象的状态? (如果不使用Stateful),我通常在文本文件或xml文件中使用托管状态,这意味着当用户登录时,用户信息将以文本或xml文件保存为托管状态,当用户注销时,系统将删除文本或xml文件。我需要一些建议。
答案 0 :(得分:1)
首选项API可能就是您所追求的(我认为):java.util.prefs
答案 1 :(得分:1)
我认为你混合了这些概念。您不应该为桌面应用程序保存用户信息,因为您的应用程序只有一个用户而不是Web应用程序的许多用户。您的应用程序已经知道谁是其用户..
但是,如果您需要保存有关您的应用程序的用户首选项,如上一篇文章所述,您可以使用首选项api,或者只是保存到文本文件。
答案 2 :(得分:1)
Java 1.4中添加的java.util.pref.Preferences类用于存储和获取持久性(在程序执行之间保留在磁盘上)分层名称/值对。这些首选项存储在操作中系统相关的方式,例如在Windows注册表或Mac首选项文件中。
因此,通过使用Preferences API,同样的事情将发生在你已经在做的文件I / O等,但是会以更好的方式管理。
相反,如果可能,您可以尝试使用Map,通过相应的方法访问,以通过单例类插入/检索用户状态。