您的位置:首页 > 理论基础 > 计算机网络

Map<String, HttpSession> map=(Map<String, HttpSession>)

2016-05-14 15:42 561 查看
Map<String, HttpSession> map=(Map<String, HttpSession>) sc.getAttribute("users");//保存所有登录有关的map对象

package com.tfy.heima.listener;

import java.util.Collection;

import java.util.Collections;

import java.util.HashMap;

import java.util.Map;

import javax.servlet.ServletContext;

import javax.servlet.http.HttpSession;

import javax.servlet.http.HttpSessionAttributeListener;

import javax.servlet.http.HttpSessionBindingEvent;

import com.tfy.heima.domain.User;

public class OnlineUserListener implements HttpSessionAttributeListener {

//Map<String,HttpSession>

public void attributeAdded(HttpSessionBindingEvent se) {

      HttpSession session=se.getSession();

      Object obj=session.getAttribute("user");

      if(obj!=null && obj instanceof User){

     User user=(User)obj;

     ServletContext sc=session.getServletContext();

     Map<String, HttpSession> map=(Map<String, HttpSession>) sc.getAttribute("users");//保存所有登录有关的map对象

     if(map==null){

     map=Collections.synchronizedMap(new HashMap<String, HttpSession>());

     sc.setAttribute("users", map);

     }

     map.put(user.getUsername(), session);

      }

}

public void attributeRemoved(HttpSessionBindingEvent se) {

}

public void attributeReplaced(HttpSessionBindingEvent se) {

}

}

条回答

本问题标题:Map<String,HttpSession>map=(Map<String,H
本问题地址:http://www.educity.cn/wenda/387230.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: