- 浏览: 107328 次
- 性别:
- 来自: 北京
文章分类
最新评论
web.xml
<listener>
<listener-class>cyoa.page.OnlinePersons</listener-class>
</listener>
import javax.servlet.ServletContext;
import javax.servlet.ServletContextAttributeEvent;
import javax.servlet.ServletContextAttributeListener;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
public class OnlinePersons implements HttpSessionListener,
ServletContextListener, ServletContextAttributeListener {
private int count;
private ServletContext context = null;
public OnlinePersons() {
count = 0;
// setContext();
}
// 创建一个session时激发
public void sessionCreated(HttpSessionEvent se) {
count++;
setContext(se);
}
// 当一个session失效时激发
public void sessionDestroyed(HttpSessionEvent se) {
count--;
setContext(se);
}
// 设置context的属性,它将激发attributeReplaced或attributeAdded方法
public void setContext(HttpSessionEvent se) {
se.getSession().getServletContext().setAttribute("onLine",
new Integer(count));
}
// 增加一个新的属性时激发
public void attributeAdded(ServletContextAttributeEvent event) {
log("attributeAdded('" + event.getName() + "', '" + event.getValue()
+ "')");
}
// 删除一个新的属性时激发
public void attributeRemoved(ServletContextAttributeEvent event) {
log("attributeRemoved('" + event.getName() + "', '"
+ event.getValue() + "')");
}
// 属性被替代时激发
public void attributeReplaced(ServletContextAttributeEvent event) {
log("attributeReplaced('" + event.getName() + "', '"
+ event.getValue() + "')");
}
// context删除时激发
public void contextDestroyed(ServletContextEvent event) {
log("contextDestroyed()");
this.context = null;
}
// context初始化时激发
public void contextInitialized(ServletContextEvent event) {
this.context = event.getServletContext();
log("contextInitialized()");
}
private void log(String message) {
System.out.println("ContextListener: " + message);
}
public void attributeAdded(HttpSessionBindingEvent arg0) {
// TODO Auto-generated method stub
}
public void attributeRemoved(HttpSessionBindingEvent arg0) {
// TODO Auto-generated method stub
}
public void attributeReplaced(HttpSessionBindingEvent arg0) {
// TODO Auto-generated method stub
}
}
//退出时
function close(){
document.location.href="loginoutAction.do";
var ua = navigator.userAgent; var ie = navigator.appName=="Microsoft Internet Explorer"?true:false;
if(ie){
var IEversion = parseFloat(ua.substring(ua.indexOf("MSIE ")+5,ua.indexOf(";",ua.indexOf("MSIE "))));
if( IEversion< 5.5){
var str = '';
document.body.insertAdjacentHTML("beforeEnd", str);
document.all.noTipClose.Click();
} else {
top.opener =null; top.close();
}
}else{
top.close();
}
}
import java.io.PrintWriter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
public class LoginoutAction extends Action{
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
HttpSession sess=request.getSession(true);
if(sess.getAttribute("username")!=null && !sess.getAttribute("username").equals("")){
sess.removeAttribute("username");
sess.invalidate();
}
response.setContentType("text/html;charset=UTF-8");
PrintWriter out=null;
try{
out= response.getWriter();
out.print("<script language='javascript'> top.location.href='login.jsp';</script>");
} catch(Exception e){e.printStackTrace();}
return null;
}
}
发表评论
-
解决excel文字读取错误 可能某些数字格式已丢失
2018-12-29 09:11 599ServletOutputStream ... -
struts上传下载多个文件
2015-04-30 11:24 477实例: 第一步导入包: commons-fileupload- ... -
jdcob--Could not initialize class com.jacob.com.ComThread
2015-02-27 09:00 18841--dll 文件 放在tomcat/bin 下面 ... -
ntko打印公章
2014-12-02 09:04 540//TANGER_OCX_OBJ.ActiveDocument ... -
hibernate 映射文件生成数据库表脚本
2011-03-28 16:20 845import org.hibernate.cfg.Config ... -
java换肤改变页面肤色
2011-03-02 14:05 971import java.io.IOException;impo ... -
java 过滤未登录的用户
2011-03-02 14:03 1082<filter> <filte ... -
java 过滤乱码
2011-03-02 13:44 921web.xml <filter> <f ... -
jacob资料
2011-02-13 23:48 1841JACOB是一个JAVA到微软的COM接口的桥梁。使用JACO ... -
hibernate 查询乱码
2010-10-06 15:12 730在使用HQL进行查询时,如果查询语句中存在中文字符,则会有乱码 ... -
java 多线程代码
2010-09-30 12:44 1471package com.jacob.activeX; imp ... -
过滤未登录的用户
2010-09-15 10:59 864package com.filter; import jav ... -
jacob操作word 解决换页问题
2010-09-13 08:17 3720package audit.pub.word; imp ... -
jacob操作word增加表格 行列
2010-08-10 09:52 2922import com.jacob.activeX.Activ ... -
jsp导出word 带图片
2010-04-12 17:28 33581.将word另存为html格式,然后将html格式的文件另存 ... -
读取blob格式图片上传到服务器目录
2010-04-12 17:21 1963//得到blob格式图片 String fileUrl = ... -
批量导入图片保存成blob格式
2010-03-31 15:15 1664/** * 创建目录 * @param director ... -
org.apache.tools包 解压缩zip 解决中文乱码 ant 版本冲突
2010-03-30 12:50 3008private void createDirectory(St ... -
java 获取文件大小
2010-03-29 14:32 15778import java.io.*; public class ... -
xml的读取分析 key value
2010-03-23 15:20 1565package com.basedata.xml; impo ...
相关推荐
JAVA Web在线用户统计 强大 好用 简单
该组件是应用java实现在线用户数统计的相关工程和源代码
我们将使用Java编程语言和一些常见的开发库来完成这个项目。 以下是本实战博客的主要内容: 项目概述 设置开发环境 创建投票类 创建投票选项类 创建投票系统引擎 用户界面 添加、投票和统计投票 运行和测试投票...
+servlet+java 实现统计在线人数,在线用户.txt
14、支持用户自定义文件统计类型及统计方法。 15、支持htm,excel,csv,txt等多种存盘文件类型。 16、支持统计结果的直接打印输出。 17、支持命令行方式的文件及目录统计方式。 18、支持资源管理器右键关联的文件及...
JAVA jsp统计用户登录在线人数,JAVA jsp统计用户登录在线人数
功能描述: 用户是否在线或离线状态 在线用户统计 系统访问人数统计 内有说明文档。
Java实现:月,日,年,周,访问量统计
网站统计在线人数,当前年、月、日访问量JAVA代码
使用spring boot框架编写的SVN统计代码数量系统,内包含数据库文件,可以直接运行,可以统计项目每个成员提交的代码数量。
本文件好有两个例子,是为了方便下载人员的理解。运用了HTTP会话的监听来实现,还有利用了vector对象的elements()方法。
javaweb中实现在线人数和在线用户的统计。有源码。
Java+Spring+Mysql+C3P0 统计网站的访问量,比如PV(页面浏览量),UV(独立访客数),将统计结果保存到MYSQL数据库中。解压后有项目log和Mysql的建库脚本。
Java实现在线用户数统计,出自《Java实用组件集》这本书源代码
非常完美Java实现年、月、日、周访问量统计、
本文主要介绍了java web监听器统计在线用户及人数的方法解析。具有很好的参考价值。下面跟着小编一起来看下吧
一个小小的组建,实现在线用户列表的统计,里面附带有一个简单的示例程序!和详细的使用说明
用Java打开文件 集合操作 用户界面实现的英文词频统计
springboot2.0+netty-socket实现在线人数统计功能