【发布时间】:2014-03-25 19:29:25
【问题描述】:
我将登录的用户名存储在 arraylist 中,而不是将 arraylist 放入会话中。每当用户第一次登录时,它正在打印用户名,但刷新页面时,相同的名称会打印两次,但我只想要无论用户刷新多少次页面都只打印一次用户名请帮助
String username = request.getParameter("username");
String password = request.getParameter("password");
HttpSession session = request.getSession(true);
session.setAttribute("username", username);
session.setAttribute("password", password);
response.setContentType("text/html");
ArrayList<user> users = (ArrayList<user>) sc
.getAttribute("users");
if (users == null) {
System.out.println("loggedInUsers creates");
users = new ArrayList<user>();
}
users.add(new user(Name, U_ID, Pass));
sc.setAttribute("users", users);
users = (ArrayList<user>) sc.getAttribute("users");
for (int i = 0; i <= users.size() - 1; i++) {
user user = users.get(i);
out.println(user.getUserName()+ "<br>");
//out.println("<br/>" + user.get(i));
}
【问题讨论】:
-
在 ArrayList 上使用 contains() 来检查它是否已经拥有当前的用户名。如果是,则不添加,如果否,则添加。
-
希望对您有所帮助 [Hashmap] [1]:stackoverflow.com/questions/3640648/…
标签: java jsp arraylist servlet-3.0