监听器:统计在线人数
接着,我来写一个监听器的案例来巩固学习监听器的知识,便于日后的查阅和复习。大概分为以下几个步骤:
1.编写统计人数的Servlet,实现特定的监听器接口
2.编写好监听器接口后,在web.xml中注册间监听器(ServletContext、HttpSession、ServletRequest、HttpSessionAttributeL等)都在web.xml中使用
3.编写jsp跳转,访问,统计结果。
实验代码:
1.CountTotalNumberOfPeople.java
package com.nyist.cn.Example;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
public class CountTotalNumberOfPeople implements HttpSessionListener{
int count = 0;
@Override
public void sessionCreated(HttpSessionEvent se) {
ServletContext context = se.getSession().getServletContext();
Integer count = (Integer)context.getAttribute(“count”);
if(count == null){
count = 1;
context.setAttribute(“count”,count);
}else {
count++;
context.setAttribute(“count”,count);
}
}
@Override
public void sessionDestroyed(HttpSessionEvent se) {
ServletContext context = se.getSession().getServletContext();
Integer count = (Integer)context.getAttribute(“count”);
count—;
context.setAttribute(“count”,count);
}
}
2.index.jsp
当前在线用户: ${applicationScope.count }人
注意:session的闲置链接时长为30分钟,我在web.xml中使用
结果:
当前在线用户: 2人
还没有评论,来说两句吧...