JavaWeb HttpSession应用


 

package com.xzit.erpmodel.listeners;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
/**
 * 监听HttpSession 公共监听器
 * @author zengy
 *
 */

public class HttpSessionListenerImp implements HttpSessionListener {

    @Override
    public void sessionCreated(HttpSessionEvent arg0) {
        // TODO Auto-generated method stub
        HttpSession sess = arg0.getSession(); //获取新建的Session对象
        ServletContext context =  sess.getServletContext();    //获取ServletContext上下文对象
        
        Object obj = context.getAttribute("onlineNum");    //获取ServletContext上下文域中存储在线人数的属性
        if(obj == null) {
            context.setAttribute("onlineNum", Integer.valueOf(1)); //这是第一个登录成功的人
        }else {
            //在线人数增加1
            context.setAttribute("onlineNum", Integer.valueOf(Integer.parseInt(obj.toString()))+1);
        }
    }

    @Override
    public void sessionDestroyed(HttpSessionEvent arg0) {
        HttpSession sess = arg0.getSession(); //获取新建的Session对象
        ServletContext context =  sess.getServletContext();    //获取ServletContext上下文对象
        
        // TODO Auto-generated method stub
        Object obj = context.getAttribute("onlineNum");    //获取ServletContext上下文域中存储在线人数的属性
        context.setAttribute("onlineNum", Integer.valueOf(Integer.parseInt(obj.toString()))-1);
    }

}
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="com.xzit.erpmodel.users.domain.*"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>
        
    

class="f_0">       &nbsp;       &nbsp;       &nbsp;  &nbsp; <% Object obj = session.getAttribute("currentUser"); SysUsers user = null; if(obj != null){ user = (SysUsers)obj; %> 当前用户:  &nbsp; <% Object lineNum = application.getAttribute("onlineNum"); if(lineNum != null){%> 当前在线用户<%=lineNum%><%} %>    &nbsp; <% }else{%> 未登录   &nbsp; <%} %>
<?xml version="1.0" encoding="UTF-8"?>

  erpmms
  
  
  
        10
  
  
  
      class>com.xzit.erpmodel.listeners.HttpSessionListenerImpclass>
  
  
  
    login.jsp