⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mysessionlistener.java

📁 旅游管理系统
💻 JAVA
字号:
package com.bjfu.tm;

import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.http.HttpSessionAttributeListener;
import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
import javax.servlet.http.HttpSessionActivationListener;
import javax.servlet.http.HttpSessionBindingListener;

import sun.rmi.log.LogOutputStream;

import java.io.PrintWriter;
import java.io.FileOutputStream;
import java.util.ArrayList;

public final class MySessionListener 
implements HttpSessionActivationListener,HttpSessionBindingListener,
HttpSessionAttributeListener,HttpSessionListener,ServletContextListener{
	
	ServletContext context;
	int users = 0;
	ArrayList list = new ArrayList();
	
	//HttpSessionActivationListener
	public void sessionDidActivate(HttpSessionEvent se) {
		logout("sessionDidActive("+ se.getSession().getId()+")");
	}
	
	public void sessionWillPassivate(HttpSessionEvent se) {
		logout("sessionWillPassivate(" + se.getSession().getId()+")");
	}//HttpSessionActivationListener
	
	//HttpSessionBindingListener
	public void valueBound(HttpSessionBindingEvent event) {
		logout("valueBound(" + event.getSession().getId()+")");
	}
	public void valueUnbound(HttpSessionBindingEvent event) {
		logout("valueUnbound(" + event.getSession().getId()+")");
	}
	
	//HttpSessionAttributeListener
	public void attributeAdded(HttpSessionBindingEvent event) {
		logout("attributeAdded("+event.getSession().getId()+"','"+
				event.getName()+"','"+event.getValue()+")");
	}
	public void attributeRemoved(HttpSessionBindingEvent event) {
		logout("attributeRemoved("+event.getSession().getId()+"','"+
				event.getName()+"','"+event.getValue()+")");
	}
	
	public void attributeReplaced(HttpSessionBindingEvent event) {
		logout("attributeReplaced("+event.getSession().getId()+"','"+
				event.getName()+"','"+event.getValue()+")");
	}//HttpSessionAttriubteListener
	
	//HttpSessionListener
	public void sessionCreated(HttpSessionEvent event) {
		users++;
		logout("sessionCreated('"+event.getSession().getId()+"')目前有"+users+"个用户");
		context.setAttribute("users",new Integer(users));
	}
	
	public void sessionDestroyed(HttpSessionEvent event) {
		users--;
		logout("sessionDestroyed('"+event.getSession().getId()+"')目前有"+users+"个用户");
		context.setAttribute("users",new Integer(users));
	}//HttpSessionListener
	
//	ServletContextListener
	public void contextDestroyed(ServletContextEvent sce) {
		logout("contextDestroyed()-->ServletContext被销毁");
		this.context =null;
	}
	
	public void contextInitialized(ServletContextEvent sce) {
		this.context = sce.getServletContext();
		logout("contextInitialized()-->ServletContext初始化了");
	}//ServletContextListener
	
	private void logout(String message) {
		PrintWriter out = null;
		try {
			out = new PrintWriter(new FileOutputStream("c:\\session.txt",true));
			out.println(new java.util.Date().toLocaleString()+"::Form MySessionListener:"+message);
			out.close();
		}catch (Exception e) {
			// TODO: handle exception
			out.close();
			e.printStackTrace();
		}
	}
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -