社区
Java SE
帖子详情
如何用java实现当前在线人数?
sunqj
2002-06-03 10:04:09
各位大侠,请帮忙。
...全文
251
8
打赏
收藏
如何用java实现当前在线人数?
各位大侠,请帮忙。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sunqj
2002-06-14
打赏
举报
回复
各位大侠,本来已经结帐,分都给了,但是在给分时出现错误,分没有给成,但帖子却结了。
该怎么把分给你们?
sunqj
2002-06-13
打赏
举报
回复
各位大侠,怎样在服务器端监听这个session的创建和销毁事件呢?
比如用tomcat3.2.1或者用EASserver。
sunqj
2002-06-13
打赏
举报
回复
各位大侠,怎样在服务器端监听这个session的创建和销毁事件呢?
LD520
2002-06-11
打赏
举报
回复
/**这是管理user信息的类
文件名为onLineUser.java
欢迎访问javajia家(http://www.javajia.com),由yuking制作。2001.1.1
*/
import javax.servlet.http.*;
import javax.servlet.*;
import java.util.*;
public class onLineUser implements HttpSessionBindingListener {
public onLineUser(){
}
private Vector users=new Vector();
public int getCount(){
users.trimToSize();
return users.capacity();
}
public boolean existUser(String userName){
users.trimToSize();
boolean existUser=false;
for (int i=0;i<users.capacity();i++ )
{
if (userName.equals((String)users.get(i)))
{
existUser=true;
break;
}
}
return existUser;
}
public boolean deleteUser(String userName) {
users.trimToSize();
if(existUser(userName)){
int currUserIndex=-1;
for(int i=0;i<users.capacity();i++){
if(userName.equals((String)users.get(i))){
currUserIndex=i;
break;
}
}
if (currUserIndex!=-1){
users.remove(currUserIndex);
users.trimToSize();
return true;
}
}
return false;
}
public Vector getOnLineUser()
{
return users;
}
public void valueBound(HttpSessionBindingEvent e) {
users.trimToSize();
if(!existUser(e.getName())){
users.add(e.getName());
System.out.print(e.getName()+"\t 登入到系统\t"+(new Date()));
System.out.println(" 在线用户数为:"+getCount());
}else
System.out.println(e.getName()+"已经存在");
}
public void valueUnbound(HttpSessionBindingEvent e) {
users.trimToSize();
String userName=e.getName();
deleteUser(userName);
System.out.print(userName+"\t 退出系统\t"+(new Date()));
System.out.println(" 在线用户数为:"+getCount());
}
}
/////////////////////////////////////////////////////////////////////////////
<%
/**这是显示在线用户的jsp文件
文件名为onLineUser.jsp
欢迎访问javajia家(http://www.javajia.com),由yuking制作。2001.1.1
*/
%>
<%@ page contentType="text/html;charset=gb2312" %>
<%@ page import="onLineUser,java.util.*" %>
<jsp:useBean id="onlineuser" class="onLineUser" scope="application"/>
<html>
<head>
<title>搞定JSP在线人数</title>
</head>
<body>
<center>
<p><h1>登陆成功,欢迎您访问Java家!</h1></p>
</center>
<% session = request.getSession(false); %>
<%
String username=request.getParameter("username");
if (onlineuser.existUser(username)){
out.println("用户<font color=red>"+username+"</font>已经登陆!");
}else{
session.setMaxInactiveInterval(50); //Sesion有效时长,以秒为单位
session.setAttribute(username,onlineuser);
out.println("欢迎新用户:<font color=red>"+username+"</font>登陆到系统!");
}
out.println("<br>当前在线用户人数:<font color=red>"+onlineuser.getCount()+"</font><br>");
Vector vt=onlineuser.getOnLineUser();
Enumeration e = vt.elements();
out.println("在线用户列表");
out.println("<table border=1>");
out.println("<tr><td>用户名</td></tr>");
while(e.hasMoreElements()){
out.println("<tr><td>");
out.println((String)e.nextElement()+"<br>");
out.println("</td></tr>");
}
out.println("</table>");
%>
<center>
<p>yuking制作</p>
<p> </p>
<%
out.println("<p><a href='logout.jsp?username="+username+"'>退出系统</a></p>");
%>
</center>
</body>
</html>
////////////////////////////////////////////////////////////////////////////////////
<%
/**这是用户退出的jsp文件
文件名为logout.jsp
欢迎访问javajia家(http://www.javajia.com),由yuking制作。2001.1.1
*/
%>
<%@ page contentType="text/html;charset=gb2312" %>
<%@ page import="onLineUser,java.util.*" %>
<jsp:useBean id="onlineuser" class="onLineUser" scope="application"/>
<html>
<head>
<title>搞定JSP在线人数</title>
</head>
<body>
<center>
<p><h1>登陆成功,欢迎您访问Java家!</h1></p>
</center>
<%
String username=request.getParameter("username");
if(onlineuser.deleteUser(username))
out.println(username+"已经退出系统!");
else
out.println(username+"没有登陆到系统!");
%>
<center>
<p>yuking制作</p>
<p> </p>
<p><a href="logout.jsp">退出系统</a></p>
</center>
</body>
</html>
sunqj
2002-06-11
打赏
举报
回复
to: shine_car(I can do) (
大侠,这个类该怎么用啊,是不是用userbean?该怎么设置?
大侠帮忙。
sunqj
2002-06-11
打赏
举报
回复
大侠,那么如何找到javax.servlet和javax.servlet.http包啊。救命
shine_car
2002-06-03
打赏
举报
回复
看看:http://www.csdn.net/expert/topic/366/366150.xml?temp=.1292536
注意其中的private int count = 0;
应该为static private int count = 0;
skyyoung
2002-06-03
打赏
举报
回复
在JSP版查找“在线”就有答案。
java
获取
当前
在线
人数
_
java
使用监听器
实现
一个统计网站
在线
人数
的示例
本文详细介绍了如何使用
Java
监听器(ServletContextListener、HttpSessionAttributeListener、HttpSessionListener)来统计网站
在线
人数
。通过创建OnlineListener类并注册到web.xml,
实现
了用户登录、注销时对
在线
人数
的实时更新。示例代码包括登录Servlet和注销Servlet的
实现
,以及index.html页面的创建。
java
监听
在线
人数
_
java
监听器
实现
在线
人数
统计
本文展示了如何使用
Java
实现
在线
人数
统计功能,通过Servlet监听器跟踪会话创建与销毁,动态更新
当前
在线
人数
。代码包括ServletContextListener和HttpSessionListener的
实现
,以监控并更新全局的
在线
人数
计数。
Servlet
实现
JSP页面显示
在线
人数
本文介绍了一种使用JSP和Servlet技术
实现
网站
在线
人数
统计的方法。通过编写sessioncounter.
java
监听会话创建和销毁来更新
在线
人数
,并在online.jsp页面显示
当前
在线
人数
。
用Servlet监听器
实现
对
在线
人数
的统计
本文介绍如何使用
Java
创建一个
在线
人数
统计类,并通过Servlet监听器程序
实现
实时更新
在线
人数
,最后演示如何在JSP页面显示
当前
在线
人数
。
统计网站访问
人数
及
当前
在线
人数
本文介绍了一个使用
Java
和HTML
实现
的简单网站访问统计功能,能够记录网站的总访问
人数
及
当前
在线
人数
,通过session和application对象来跟踪用户会话和全局应用状态。
Java SE
62,622
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章