`
yyzhpq
  • 浏览: 301726 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

JSP在线人数

    博客分类:
  • jsp
阅读更多
/**这是管理user信息的类

onLineUser.java

*/

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

*/
%>
<%@ 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>登陆成功!</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></p>
  <p>&nbsp;</p>
<%
out.println("<p><a href='logout.jsp?username="+username+"'>退出系统</a></p>");
%>
</center> 
</body> 
</html> 

////////////////////////////////////////////////////////////////////////////////////
<%
/**这是用户退出的jsp文件

文件名为logout.jsp

*/
%>
<%@ 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>登陆成功!</h1></p>
</center>
<% 
String username=request.getParameter("username");
if(onlineuser.deleteUser(username))
out.println(username+"已经退出系统!");
else
out.println(username+"没有登陆到系统!");
%> 
<center> 
  <p></p>
  <p>&nbsp;</p>
  <p><a href="logout.jsp">退出系统</a></p>
</center> 
</body> 
</html> 
分享到:
评论

相关推荐

    JSP 在线人数统计的实现

    **JSP 在线人数统计的实现** 在Web开发中,实时在线人数统计是一项常见的需求,它可以帮助网站管理员了解当前有多少用户正在访问网站,以便优化资源分配和服务质量。JSP(JavaServer Pages)作为Java Web开发的重要...

    ex.zip_JSP在线人数统计_ex

    本项目"ex.zip_JSP在线人数统计_ex"显然关注的是如何在JSP环境中实现一个在线人数统计功能。这一功能对于网站管理员来说非常有用,能够实时了解当前访问网站的用户数量,从而对服务器性能进行优化或调整。 首先,...

    JSP在线人数统计

    JSP要想要实时的监控在线人数只能通过session监听来完成,当浏览器关闭的时马上触发事件让session值实时减1,本事例具有完整的JSP在线人数统计,访问次数,用eclipse工具打开或直接copy至Tomcat上就可以运行..

    JSP统计在线人数实现

    在本文中,我们将深入探讨如何使用JavaServer Pages (JSP) 实现在线人数统计功能,以便展示当前在线的用户数量。我们将分析提供的代码段,并解释关键概念和技术。 首先,我们有一个名为`onLineUser`的类,它实现了`...

    用JSP程序实现统计当前在线人数

    ### JSP与在线人数统计 JSP是一种基于Java的技术,它允许在HTML页面中嵌入Java代码,从而实现动态网页的生成。JSP可以访问Java后端资源,执行复杂的业务逻辑,并将结果返回给前端展示。在线人数统计正是一个结合了...

    在线人数统计程序(JSP)

    通过学习这个JSP在线人数统计程序示例,你可以深入了解如何在JSP中使用Session进行状态管理,并且掌握如何设计和实现一个基本的在线人数统计功能。这将有助于提升你的Web开发技能,更好地应对实际项目的需求。

    jsp_servlet在线人数

    本项目以"jsp_servlet在线人数"为主题,旨在实现一个功能,即实时统计网站的在线用户数量以及注册用户的总数。下面将详细介绍如何利用JSP和Servlet来实现这一功能。\n\n1. **JSP基础**\n JSP是一种基于Java的服务器...

    jsp实现在线人数及在线用户统计

    ### JSP实现在线人数及在线用户统计 #### 知识点概述 在现代Web开发中,统计在线人数和在线用户是十分重要的功能之一,尤其是在构建社区、论坛等交互性强的网站时。通过JSP(JavaServer Pages)可以方便地实现这一...

    记录同时在线人数 jsp

    在开发Java Web应用程序时...总之,通过JSP、Servlet和session监听器,我们可以有效地统计和展示Java Web应用的实时在线人数。然而,实际应用中还需要考虑更多因素,如性能优化、用户体验以及更准确的在线状态判断等。

    JAVA jsp统计在线人数

    在Java JSP(JavaServer Pages)环境中,统计在线人数是一项常见的需求,这通常涉及到服务器端的会话管理、数据持久化以及实时性处理。这里我们将深入探讨如何利用JSP技术来实现这一功能。 首先,我们需要理解JSP的...

    jsp完成对在线人数的统计!

    ### JSP实现在线人数统计的知识点解析 #### 一、项目背景与目标 在Web应用开发中,了解网站的实时在线用户数量对于优化资源分配、提高用户体验等方面具有重要意义。本项目的目标是通过JSP(JavaServer Pages)技术...

    jsp统计在线人数.txt

    根据给定文件的信息,我们可以总结出以下关于使用 JSP 实现在线用户人数统计的知识点: ### 1. **实现原理** 在线人数统计主要是通过利用 `HttpSession` 的生命周期事件来实现。每当一个新用户访问网站时,服务器会...

    JSP中的在线人数统计

    ### JSP中的在线人数统计 #### 一、引言 在Web开发中,统计在线人数是一种常见的需求,尤其是在社交网络、论坛或者任何需要实时显示在线用户数量的应用场景中尤为重要。本文将详细介绍如何在JSP(JavaServer Pages...

    jsp统计访问人数源码

    在本文中,我们将深入探讨如何使用JSP(JavaServer Pages)技术来实现一个简单的页面访问人数统计的功能。这个功能对于初学者来说是一个很好的实践项目,能够帮助他们更好地理解和运用JSP的基本原理。我们将讨论以下...

    jsp访问人数计数器

    jsp简单的编程代码,实现显示您是第几位访问者

    jsp+servlet+java 实现统计在线人数,在线用户.txt

    通过上述分析,我们可以看出这是一个利用JSP、Servlet和Java技术构建的简单在线人数统计系统。它不仅实现了基本的用户登录验证功能,还通过监听用户的在线状态来实时更新在线人数,提供了一种较为实用的解决方案。...

    jsp 统计在线人数利用HttpSessionListener、HttpSessionBindingListener

    jsp 统计在线人数实例,是个完整的项目实例,部署即可查看效果! 通过使用:HttpSessionListener、HttpSessionBindingListener来实现. valueBound 方法登录触发。 valueUnbound 方法退出触发。

    jsp利用application统计在线人数的方法

    在使用Java Server Pages (JSP) 开发Web应用的过程中,统计在线人数是一项常见的功能需求。这可以通过JSP内置对象application实现,具体方法是利用application对象的属性进行共享数据存储,以此来统计所有用户访问的...

    jsp利用application统计在线人数的方法.docx

    在JavaServer Pages (JSP) 开发中,统计在线人数是一项常见的需求,它可以帮助网站管理员了解站点的活跃度。本文将详细阐述如何利用JSP中的`application`对象来实现在线人数的统计。 `application`对象在JSP中代表...

    jsp简单在线聊天功能

    这些监听器可以监听session和application的创建、销毁事件,例如,当有新用户登录时,可以通过session监听器记录在线人数;当聊天消息被发送时,可以通过application监听器更新在线用户的状态。 在具体实现过程中,...

Global site tag (gtag.js) - Google Analytics