我正在实施一个Web应用程序,在服务器端我需要跟踪已登录的用户。我为此实现了一个简单的Authentication类,其中包含登录/注销的方法。
public class AuthenticationServiceImpl extends RemoteServiceServlet implements AuthenticationService {
private final List<User> currentlyLoggedIn = new ArrayList<User>();
@Override
public User login(String username, String password) {
// retrieve user from DB if exists
// add the user to the list/set/whatever
}
@Override
public void logout(User user) {
// remove the user from the datastructure
}
}
现在,我想知道最好使用哪种数据结构?首先我考虑的是List
,但由于订单无关紧要,我需要快速添加/删除功能,我现在正在考虑HashMap
,使用username
作为键和User
对象作为值将是更好的选择。有什么想法/建议吗?
答案 0 :(得分:1)
因为订单无关紧要,我需要快速添加/删除功能
你知道,在我看来,HashMap将是完美的选择。 只是你可以通过名称访问用户对象这一事实,我认为这是可行的方法。