以下のコードで sessionCreated は、新しいセッションが作成されるたびに機能します。ただし、sessionDestroyed は、session.invalidate(); を呼び出す場合にのみ機能します。次の状況でどのように機能させることができますか**
1) ユーザーがブラウザを閉じる
2) システムの電源オフ
3) セッションタイムアウト**
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class SesListener implements HttpSessionListener
{
long sttime,endtime;
public void sessionCreated(HttpSessionEvent se)
{
sttime=System.currentTimeMillis();
HttpSession ses=se.getSession();
ServletContext sc=ses.getServletContext();
sc.log("session started at "+new Date());
System.out.println("session started at "+new Date());
}
public void sessionDestroyed(HttpSessionEvent se)
{
endtime=System.currentTimeMillis();
HttpSession ses=se.getSession();
ServletContext sc=ses.getServletContext();
sc.log("session ended at "+new Date());
System.out.println("session ended at "+new Date());
}
}
私の.xmlファイルは
<listener>
<listener-class>SesListener</listener-class>
</listener>