1. 程式人生 > >web專案統計線上人數

web專案統計線上人數

1、定義一個監聽器,實現HttpSessionBindingListener介面(MySessionListener.java)

package com.ilfy.lbjn.listener;

import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.http.HttpSessionBindingListener;

/**
 * 統計線上人數 <br\>
 * 定義一個監聽器,實現HttpSessionBindingListener介面
 */
public class MySessionListener implements HttpSessionBindingListener {
	public static int num;

	@Override
	public void valueBound(HttpSessionBindingEvent event) {
		// event.getSession().getAttribute("mListener");
		num++;
		System.out.println("當前線上人數:" + num);
	}

	@Override
	public void valueUnbound(HttpSessionBindingEvent event) {
		num--;
		System.out.println("當前線上人數:" + num);
	}
}

2、在使用者成功登入系統後,new出MySessionListener監聽器,並將其物件存到session中

//在使用者成功登入系統後,new出MySessionListener監聽器,並將其物件存到session中
			HttpSession session = req.getSession();
			MySessionListener mListener = new MySessionListener();
			session.setAttribute("mListener", mListener);

3、在web.xml中配置session 監聽器

<!-- 配置MySessionListener -->
	<listener>
		<listener-class>com.ilfy.lbjn.listener.MySessionListener</listener-class>
	</listener>