編程:通過HttpSessionListener監聽接口實現對當前在線人數的監聽
要求:
(1) 編寫一個類實現HttpSessionListener接口,在該接口的public void sessionCreated(HttpSessionEvent se)方法中,聲明一個變量用於記錄在線的人數,並將其以屬性的形式保存在ServletContext對象中。
(2) 在web.xml中對該監聽器進行配置。
(3) 編寫一個JSP頁面,用於取得application對象中的屬性值,並將其顯示在頁面上。
[html]
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<html>
<head>
</head>
<body>
<% application.getAttribute("a"); %>
</body>
</html>
[html]
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<listener>
<listener-class>com.mars.SessionCount</listener-class>
</listener>
</web-app>
[java]
package com.mars;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class SessionCount implements HttpSessionListener {
int a = 0;
public void sessionCreated(HttpSessionEvent hse) {
a++;
ServletContext application = hse.getSession().getServletContext();
application.setAttribute("a",new Integer(a));
}
public void sessionDestroyed(HttpSessionEvent red) {
}
}