`

彻底搞定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>登陆成功,欢迎您访问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>&nbsp;</p> 
<% 
out.println("<p><a href='logout.jsp?username=" username "'>退出系统</a></p>"); 
%> 
</center> 
</body> 
</html> 

//////////////////////////////////////////////////////////////////////////////////// 
<% 
/**这是用户退出的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>登陆成功,欢迎您访问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>&nbsp;</p> 
<p><a href="logout.jsp">退出系统</a></p> 
</center> 
</body> 
</html> 
分享到:
评论

相关推荐

    JSP统计在线人数实现

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

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

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

    jsp_servlet在线人数

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

    JSP在线人数统计

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

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

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

    记录同时在线人数 jsp

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

    JSP 在线人数统计的实现

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

    JAVA jsp统计在线人数

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

    在线人数统计程序(JSP)

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

    ex.zip_JSP在线人数统计_ex

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

    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文件在线预览

    本文将深入探讨“JSP文件在线预览”这一主题,涵盖其核心概念、实现原理以及相关的技术栈。 首先,理解JSP文件的本质是关键。JSP文件是由HTML、CSS和Java代码混合编写的,服务器端执行Java代码并将其结果转换为HTML...

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

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

    JSP在线考试系统JSP在线考试系统

    **JSP在线考试系统**是基于Java Server Pages(JSP)技术开发的一种Web应用程序,用于实现网络化的考试功能。该系统通常包含用户管理、试题库管理、考试安排、在线答题、成绩评估等多个模块,旨在提供方便、高效且...

    JSP在线客服系统

    【JSP在线客服系统】是一种基于JavaServer Pages(JSP)技术构建的实时通信平台,用于提供企业与客户之间的在线交流服务。它结合了MySQL数据库,以存储和管理用户信息、对话历史等数据,实现了一个功能完备且强大的...

Global site tag (gtag.js) - Google Analytics