直接在SessionListener中就能完成在線人數(shù)統(tǒng)計功能 為啥要用RequestListener??????
public class SessionListener implements HttpSessionListener {
private static ArrayList<User> userlist = UserList.getUserlist();
private static User user=null;
public void sessionCreated(HttpSessionEvent arg0) {
String sessionId = arg0.getSession().getId();
if (userlist != null) {
for (int i = 0; i < userlist.size(); i++) {
User u = userlist.get(i);
if (u.getSessionIdByString() == sessionId) {
return;
}
}
}
user = new User();
user.setSessionIdByString(sessionId);
userlist.add(user);
arg0.getSession().getServletContext().setAttribute("user", userlist);
}
public void sessionDestroyed(HttpSessionEvent arg0) {
userlist.remove(user);
arg0.getSession().getServletContext().setAttribute("user", userlist);
}
}
public?class?User?{ private?String?sessionIdByString=""; public?String?getSessionIdByString()?{ return?sessionIdByString; } public?void?setSessionIdByString(String?sessionIdByString)?{ this.sessionIdByString?=?sessionIdByString; } }
package moedl;
import java.util.ArrayList;
public class UserList {
private static ArrayList<User> userlist = new ArrayList<User>();
public static ArrayList<User> getUserlist() {
return userlist;
}
// public static void setUserlist(ArrayList<User> userlist) {
// UserList.userlist = userlist;
// }
}
2018-08-03
requestListener的實現(xiàn)是更進一步功能的實現(xiàn)。不僅可以看到在線用戶,還可以看到在線用戶的相關(guān)信息,比如定義中的IP
2019-08-15
為了獲取ip地址